python 文件读写操作总结
1.打开文件
open函数是python的内置函数,返回一个 file 对象 定义如下:
open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)
f = open('data.txt') // 最简单的调用
参数解析:
file:文件的路径(绝对路径或者当前工作目录的相对路径)
mode:代表打开文件的模式
buffering:设置缓冲策略
encoding:用于解码或者编码文件的编码名称
errors:指定如何处理编码和解码错误
newline:控制通用换行模式如何生效(设置将什么操作符识别为换行符)
closedfd:略
opener:略
mode取值:
| 字符 | 意义 |
|---|---|
| ‘r’ | 读取(默认) |
| ‘w’ | 写入,并先截断文件 |
| ‘x’ | 排它性创建,如果文件已存在则失败 |
| ‘a’ | 写入,如果文件存在则在末尾追加 |
| ‘b’ | 二进制模式 |
| ‘t’ | 文本模式(默认) |
| ‘+’ | 打开用于更新(读取与写入) |
详细参考这个:python标准文档–open函数
2.关闭文件
调用 close 函数关闭,同时刷新缓冲区的内容
f.close()
3.读取文件内容、
read() 函数,
str = f.read(1024)
从打开的文件中读取1024个字节数据
readline() 函数
str = f.readline()
每次从文件中读取一行内容, 文件的换行符会一起读取出来
readlines()函数
list = f.readlines()
将文件所有行读出, 放到数组中
4.写入文件内容
write() 函数
f.write('hello wrold')
将任意字符串写入到文件中,也可以将二进制数据写入
5.文件定位
tell() 函数
position = f.tell()
返回当前读写的位置
seek() 函数
f.seek(offset[,from])
offset: 要移动的字节数
from:开始移动字节的参考位置
6.妙用
with open('data.txt') as f:f.write('hello')
使用 with ... as ... 语法可以省略文件关闭步骤, 因为当该代码块执行完毕后会自动调用 close() 函数


















