第六天——写操作

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这个模式,自己试一下 没有什么太大的差别



以上是关于第六天——写操作的主要内容,如果未能解决你的问题,请参考以下文章

Python 3 学习的第六天——Python基础

第六天——+模式

第二次冲刺阶段第六天

第六天

PHP学习第六天

学习Java的第六天