第六天——写操作
Posted huoxc
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第六天——写操作相关的知识,希望对你有一定的参考价值。
写操作(三)
一.写模式
1.1 覆盖写
在写文件的时候我们要养成一个写完文件就刷新的习惯. 刷新flush()
f = open(‘../path1/小娃娃.txt‘,mode=‘w‘,encoding=‘utf-8‘)
f.write(‘太白很白‘)
f.flush()
f.close()
结果:
当我选择使用w模式的时候,在打开文件的时候就就会把文件中的所有内容都清空,然后在操作
注意点:如果文件不存在使用w模式会创建文件,文件存在w模式是覆盖写,在打开文件时会把文件中所有的内容清空.
f1 = open(‘../path1/小娃娃.txt‘,mode=‘r‘,encoding=‘utf-8‘)
msg = f1.read()
print(msg)
# 这个是先查看小娃娃文件中有哪些内容
f = open(‘../path1/小娃娃.txt‘,mode=‘w‘,encoding=‘utf-8‘)
f.write(‘太白很白‘)
f.flush()
f.close()
# 这个是对小娃娃文件进行覆盖写操作
f1 = open(‘../path1/小娃娃.txt‘,mode=‘r‘,encoding=‘utf-8‘)
msg = f1.read()
print(msg)
# 查看覆盖写后的内容
尝试读一读
f1 = open(‘../path1/小娃娃.txt‘,mode=‘w‘,encoding=‘utf-8‘)
msg = f1.read()
print(msg)
结果:
Traceback (most recent call last):
File "D:/python_object/path2/test.py", line 563, in <module>
msg = f1.read()
io.UnsupportedOperation: not readable #模式是w,不可以执行读操作
wb模式下,不可以指定打开文件的编辑,但是写文件的时候必须将字符串转换成utf-8的bytes数据
f = open(‘../path1/小娃娃.txt‘,mode=‘wb‘)
msg = ‘你好‘.encode(‘utf-8‘)
f.write(msg)
f.flush() # 刷新
f.close()
1.2 追加
只要是a或者ab,a+都是在文件的末尾写入,不论光标在任何位置.
在追加模式下,我们写入的内容后追加在文件的末尾
a模式如果文件不存在就会创建一个新文件
f1 = open(‘../path1/小娃娃.txt‘,mode=‘a‘,encoding=‘utf-8‘)
msg = f1.write(‘这支烟灭了以后‘)
ab这个模式,自己试一下 没有什么太大的差别
以上是关于第六天——写操作的主要内容,如果未能解决你的问题,请参考以下文章