1 文件打开方法
1.1 open
及file
内建函数
- 内建函数
open()
/file()
提供了初始化输入/输出(I/O)操作的通用接口 - 成功打开文件后会返回一个
文件对象
,否则引发一个错误 -
open()
和file()
可以完全相互替换 - 基本语法:
file_boject = open(file_name, access_mode='r', buffering=-1)
1.2文件对象访问模式
文件模式 | 操作 |
---|---|
r | 以读方式打开(文件不存在则报错) |
w | 以写方式打开(文件存在则清空,不存在则创建) |
a | 以追加模式打开(必要时创建新文件) |
r+ | 以读写模式打开(参见r) |
w+ | 以读写模式打开(参见w) |
a+ | 以读写模式打开(参见a) |
文件输入
read
方法
-
read()
方法用来直接读写字节到字符串中
,最多读取给定数目个字节 - 如果没有给定
size
参数(默认值为-1)或者size
值为负,文件将被读取直至末尾
readline
方法
- 读取打开文件的第一行(读取下一个行结束符之前的所有字节)
- 整行读取,包括行结束符,作为
字符串
返回 - 也有一个可选的
size
参数,默认值为-1,代表读至行结束符 - 如果提供了该参数,那么在超过
size
个字节后会返回不完整的行
readlines
方法
-
readlines()
方法读取所有(剩余的)行,然后把他们作为一个字符串列表
返回
文件迭代
- 如果需要逐行处理文件,可以结合
for
循环迭代文件 - 迭代文件的方法与处理其他序列类型的数据类似
文件输出
write
方法
-
write()
内建方法功能与read()
和readline()
相反,它把含有文件数据或二进制数据块的字符串写入到文件中去 - 写入文件时,不会自动添加行结束标志
\n
,需要程序员手工输入
writelines
方法
- 和
readlines()
一样,writelines()
方法是针对列表的操作 - 接受一个
字符串列表
作为参数,将他们写入到文件 - 行结束符并不会被自动加入,所以如果需要的话,必须在调用
writelines()
前给每行结尾加上行结束符