1、文件读:
with open(filename,''r') as file:
printf(file.read())
with语句的作用是自动调用close()方法
python文件提供了三个“读”方法:read();readline();readlines()。每种方法可以接受一个变量来指定每次读取的数据量。
- read():每次读取整个文件
- readlines():把文件的每一行作为一个list的一个成员,并返回这个list。内部通过循环调用readline实现的。
- readline():每次只读取一行
注意:这三种方法将末尾的'\n'也读进来了,需要手动去掉。(list[i].rstrip('\n'))
2、文件写:
with open(filename,'w') as f: f.write('hello world!')
注意:'w'模式会把原先文件清空再写入新的东西,若文件不存在则创建一个
python文件提供了两个“写”方法:write()和writelines()
- write():和read()、readline()方法对应,是将字符串写入到文件中
- writelines():和readlines()对应,也是针对列表的操作。接受一个字符串列表作为参数,将它们写入到文件中,换行符不会自动加入,需要显式加入换行符。
file.writelines(["1","2","3"])
#此时file内容为123
file.writelines(["1\n","2\n","3\n"])
#此时内容为:
#1
#2
#3
3、最后,关于open()的mode参数:
- 'r':读
- 'w':写
- 'r+'==r+w:可读可写,文件不存在则报错
- 'w+'==w+r:可读可写,文件不存在则创建
- 'a':追加
- 'a+'==a+r:可追加可读,文件不存在则创建
对应的,如果是二进制文件,则在后面加'b'。
本文参照了“zywscq的Blog”:python文件读写小结