有许多刚接触python的小伙伴们想知道python自学文件的一些操作,下面小编通过这篇文章给大家分享几个方法。文件读取的操作方式有以下几种:只读,只写,追加,读写,写读。
只读 r
f = open('test',mode='r',encoding='utf-8') # 打开文件,读取方式为`r`,编码为UTF-8 f1 = f.read() # 读取文件 print(f1) #打印文件 f.close() # 关闭文件
只读类型下,文件不能被修改
读写 r+
f = open('test',mode='rb',encoding='utf-8') # 读取方式变为`r+` file = f.read() f1 = f.read() f.close()
当读取方式为r+时,文件可以被写入,但是打印出来的是写入前所读取的
二进制读 rb
代码略去,文件以二进制的模式读取。
剩下的我将简略的展现出来,可以参照对比以上代码
r:只读,不可被修改;
r+:读写,光标如果在前面,从第一个位置开始修改,打印出修改的字符;
rb:以byte方式读取;
w:只写,若写入的目标文件没有,则创建,有则清楚再写入;
wb:转换为byte类型写入
a:打开文件,把光标移动到有文字的后面,在进行追加;
ab:以byet类型加入
注:r+有两个表现,一个是读写,还有一个是写读。需要注意。另,w+和a+我没有写,是因为学习阶段用的相对来说较少
读取功能(前为读取方式,后为用于场合)
read():以字符读,可添加参数(i),读前i个字符;
seek():调整光标位置;
tell():调整光标位置,需放置seek()前;
readline():一行一行的读;
readlines():将每一行当成列表中元素读取,换行自带;
truncate():截取一段读出来,从后往前读
文件读取方式
f = open('test',mode='w',encoding='utf-8')
此文件读取方式,仅能读取一个文件,另外代码多
with open('test',mode='w',encoding='utf-8') as f: pass
此文件读取方式,能同时读取多个文件,且代码量相对来说少
当需要同时操作两个或两个文件以上时,with open 方法会相对来说简易许多