8:文件读写
Posted mayytest1202
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了8:文件读写相关的知识,希望对你有一定的参考价值。
1. 操作文件的流程:
1、有个文件;
2、打开文件:open(filename)。模式:只读 r、写 w、追加模式 a+。默认以只读模式打开;
3、操作文件:进行读操作或写操作;
4、关闭文件:close()。
2. 文件操作模式
- r 只读,打开的文件不存在,会报错.默认以 r 模式打开。
- w 只写,会清空原来文件的内容,若文件不存在,会新建。
a 追加写,不会清空,若文件不存在,会新建;但是不能读。
- r+ 读写模式,打开不存在的文件会报错。
- w+ 写读模式,会把文件内容清空。
- a+ 追加读模式。文件指针在最后,需要先移动文件指针,才能读到内容。文件不存在的时候不会报错。
wb 二进制模式的写,如视频、MP3、图片。
2.1 示例
#以 w 模式打开文件,进行写操作时会把文件中原来的内容覆盖掉
filename = ‘user.txt‘
f = open(filename, ‘w‘)
f.write(‘test,123‘)
f.close()
# a+ 模式打开文件后会把文件指针移动到最后面,如果直接读会读不到东西。
f = open(filename, ‘a+‘)
f.seek(0) #移动文件指针到开始位置
print(f.read()) #获取到文件中的所有内容
f.write(‘test2,123456
‘)
f.flush()
f.close()
3. read() 、 readline()、readlines()
f = open(‘users.txt‘, ‘a+‘, encoding=‘utf-8‘)
#print(‘第一次读‘, f.read()) # 一次性读完所有内容
#print(‘第二次读‘, f.read()) # 第二次去读的时候不会读到内容
print(f.readlines()) # 获取到文件所有行, 获取一个列表,每一行是列表中的一个元素
f.readline() # 一行一行的读
4. write()、writelines()
a = [‘user1,12344‘, ‘user2,23456‘]
# 使用 write 方法把列表 a 的内容写进文件里,需要循环
for i in a:
f.write(i+‘
‘)
# 使用 wrtielines 则不需要。
f.writelines(a)
# 如果是要把一个字符串写进文件直接用 write, 如果是一个 list,就用 writelines。
以上是关于8:文件读写的主要内容,如果未能解决你的问题,请参考以下文章