文件模式区别:
-
r+ ,文件不存在会报错,写入时从当前位置写入。通过seek函数可更改文件指针位置。
-
w+, 文件不存在会创建,文件存在会清空并写入新内容
-
a+, 文件不存在会创建,文件存在写入时会添加到文件最后,文件指针自动跳转到末尾,如果要使用read方法读取,需要seek改变文件指针位置。
-
rb, 以二进制形式读,bytes类型,一般用于非文本文件如图片等
-
wb,以二进制形式写
-
ab,以二进制格式打开一个文件用于追加。
常用功能
- flush() 强制刷新到硬盘
- read(),如果指定参数n,会读取n个字符。
- readline()只读一行,以\r,\n返回
- readlines()以行全部读取,返回列表形式
- tell()返回当前光标位置
- truncate()指定长度截断文件,指定字符长度!就从文件开头开始,不指定长度就从当前光标位置往后全部截断清空。只读模式下不能用。
- seek()移动文件指针,以字节为单位!!
f.seek(offset, whence=0),
whence=0表示文件头,1表示当前位置,2表示文件末尾