(1)打开文件——open('文件名', '模式',encoding='utf-8')
文件名可以是绝对路径或者相对路径;
模式分为a(追加文件)、b(二进制)、r(只读)、w(只写)、+(可读可写);
默认为utf-8编码;
最后必须close()。
(2)关闭文件——f.close()
(3)读文件——f.read(size)
size为要读取文件的字节数,size没有则为读取文件所有内容。
代码:
f = open('D:/mycode/rr.txt', 'r', encoding='utf-8') content = f.read().strip()#读取文件 print(content) f.close()#关闭文件
结果;
关关雎鸠 在河之洲 床前明月光 疑是地上霜 人生若只如初见 何事秋风悲画扇
代码:
f = open('D:/mycode/rr.txt', 'r', encoding='utf-8') content = f.read(7).strip() print(content) f.close()
结果:
关关雎鸠 在河
(4)读文件一行——f.readline()
读取的文件会有一个换行符,所以经常用f.readline.strip()去掉换行符。
代码:
f = open('D:/mycode/rr.txt', 'r', encoding='utf-8') content = f.readline().strip() #只读一行文件,读取文件会有一个换行符,所以f.readline().strip()去掉换行符。 print(content) f.close()
结果:
关关雎鸠
(5)读文件多行——f.readlines()
代码:
f = open('D:/mycode/rr.txt', 'r', encoding='utf-8') content = f.readlines() print(content) f.close()
结果:
['关关雎鸠\n', '在河之洲\n', '床前明月光\n', '疑是地上霜\n', '人生若只如初见\n', '何事秋风悲画扇\n']
代码:
f = open('D:/mycode/rr.txt','r',encoding='utf-8') content = f.readlines()#读取多行文件 for content in content: print(content) f.close()
结果:
关关雎鸠 在河之洲 床前明月光 疑是地上霜 人生若只如初见 何事秋风悲画扇
(6)打开文件的另外一种方法——with open('文件名', '模式',encoding='utf-8') as f:
with as的打开方式自动执行close().
代码:
with open('D:/mycode/rr.txt','r',encoding='utf-8') as f: content = f.read().strip() print(content)
结果:
关关雎鸠 在河之洲 床前明月光 疑是地上霜 人生若只如初见 何事秋风悲画扇
(7)写文件——write(内容)
w模式下的write()会将原文件清空;
a模式下的write()会追加文件内容。
代码:(清空了之前的内容)
f = open('D:/mycode/rr.txt','w',encoding = 'utf-8') f.write('知否') f.write('知否') f.write('应是绿肥红瘦') f = open('D:/mycode/rr.txt','r',encoding='utf-8') #f.write('唐诗三百首') content = f.read().strip() print(content)
结果:
知否知否应是绿肥红瘦