python之IO同步编程Part1

元类看不进去
然后 既然我在看路径的时候接触了os内库
那就让我来看看IO编程吧 比较好理解..

Python内置的os模块可以直接调用操作系统提供的接口函数
所以我觉得io模块就可以看成是可以直接调用内存提供的接口函数

读写之类的具体操作方法我在内置函数篇下面已经写过啦,所以这里只补充之前不知道哒~
1.使用with语句操作文件IO是个好习惯。
with 语句适用于对资源进行访问的场合,确保不管使用过程中是否发生异常都会执行必要的“清理”操作,释放资源,比如文件使用后自动关闭、线程中锁的自动获取和释放等。python with的相关知识
然而我只看了我这里用到的一种用法。

值得注意的是:
我在写入文件的时候,是重新开始写而不是在后面添加,且会返回字符数
但是为什么调用stringIO的时候 就可以输出一整串呢?
代码如下:

>>> with open('Desktop/python/test.py','r') as  f:
...     f.read()
... 
"#!/usr/local/Cellar/python3/3.6.1/bin/python3\n\ndef m(x):\n    print('1')\n    return 3*x\n    print('6')\n\na = m(10) #输出1\nprint('分割')\nprint(a) #输出30\nprint('分割')\nm(10)  #输出1\nprint('分割')\nprint(m(10)) #输出 1 30\n\n"
>>> with open('Desktop/python/test.py','w') as  f:
...     f.write("测试")
... 
2```
然后我的文件里就只有测试两个字啦

from io import StringIO
f = StringIO()
f.write('Hello')
5
f.write(' ')
1
f.write('world')
5
print(f.getvalue())
Hello world```

然后我就这样测试了一下

>>> with open('Desktop/python/test.py','w') as  f:
...     f.write("测试")
...     f.write('再一次测试')
... 
2
5
>>> f.write('test')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: I/O operation on closed file.
>>>```
2.我的理解猜想: 
stringio在import的时候被打开,可以多次传入数据,在被读取以后就重新变成了空的,相当于我们把内存里的东西取出来了,就空啦。
文件的w状态相当于创建了一个内存,往内存中输入数据。结束w的时候把内存中的数据全部输入文件然后两者均关闭,且文件中的原数据都会没掉,因为输入时会整个代替掉。读取的时候也是如此,反一反,把文件中的数据弄到内存中,调出来读一遍以后就没掉啦。
尝试一下,果然,只要不close,readline()、read(size)就会继续往后面读,否则就从头开始。

4.readlines中的strip说是去掉换行符,但以前学的是去掉空格啊 于是我做了以下尝试

line = ['123','222','231']
for a in line:
... print(a)
...
123
222
231
line = ['123\n','222\n','231\n']
for a in line:
... print(a)
...
123

222

231

line = ['123\n','222\n','231\n']
for a in line:
... print(a.strip())
...
123
222
231

所以strip()不仅可以去掉空格,还可以去掉换行符,制表符。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,324评论 19 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,173评论 25 709
  • 我叫林小溪,前面拉着我的手拖着我走的男子叫王磊。 我是xx大学的一名大学生,来自一个偏远的小山村,贫寒的家境无力支...
    回不来的阅读 2,578评论 2 2
  • 昨晚跟一个不是很熟悉的朋友散步,其实我早就知道她的性格跟我不是很合,我是会主动选择自己舒适区的人,但是她觉得无聊跟...
    苏三男阅读 689评论 0 0