Python文件操作
with open('xx.txt', 'a+') as f:
pass
看官方文档,非常美妙。
+,使文件增加读或写的功能,
w或者w+都会将文件截断
模式 | 含义 | 指针起始位置 | 有文件 | 无文件 | 备注 |
---|---|---|---|---|---|
r | open for reading (default) | 0 | 打开文件 | 报错 | |
w | open for writing, truncating the file first | 0 | 清除文件内容 | 创建打开文件 | 慎用 |
a | open for writing, appending to the end of the file if it exists | 文件末尾 | 打开文件 | 创建打开文件 | |
x | open for exclusive creation, failing if the file already exists | 0 | 报错 | 创建打开文件 | 与r相反 |
r+ | 读写 | 0 | 打开文件 | 报错 | 当要写时,指针会调到文件结尾,操作指针后,如果再次写入,指针还会跳到文件最后 |
w+ | 读写 | 0 | 清除文件内容 | 创建打开文件 | 慎用 |
a+ | 读追加 | 文件末尾 | 打开文件 | 创建打开文件 | |
+ | open for updating (reading and writing) | ||||
b | 以二进制操作文档 | ||||
t | 以文本格式操作文档 |
f.write() #字符串写入文件
f.writelines() #将一串字符串写入文件。 该序列可以是生成字符串的任何可迭代对象,通常是字符串列表
f.read([size]) #默认读出文件中所有内容,可以指定size(字节)
f.readline([size]) #默认每次读取一行,字符串中保留一个尾随的换行字符。
f.readlines([size]) #默认将文件内容讲到列表中保存,以每行为一个元素
f.flush() #将缓冲中的内容写入磁盘
f.tell() #显示当前文件的指针所在位置
f.close() #关闭打开的文件
f.seek() #对文件进行指针偏移操作,有三个模式,
#seek(0,0) 默认移动到文件开头或简写成seek(0)
#seek(x,1) 表示从当前指针位置向后移x(正数)个字节,如果x是负数,则是当前位置向前移动x个字节
#seek(x,2) 表示从文件末尾向前后移x(正数)个字节,如果x负数,则是从末尾向前移动x个字节
f.encoding # 打印当前使用的字符编码
f.name # 打印文件名
f.flush() # 刷新
f.truncate() # 清空文件
f.truncate(12) # 从头开始,第12个字符后截断并清除