今天享学课堂给大家介绍一下四种Python逐行读取文件内容的方法,并分析了各种方法的优缺点及应用场景,以下代码在python3中测试通过,python2中运行部分代码已注释,稍加修改即可。
方法一:readline函数
#-*-coding:UTF-8-*-
f=open("/pythontab/code.txt")#返回一个文件对象
line=f.readline()#调用文件的readline()方法
whileline:
#printline,#在Python2中,后面跟','将忽略换行符
print(line,end='')#在Python3中使用
line=f.readline()
f.close()
优点:节省内存,不需要一次性把文件内容放入内存中
缺点:速度相对较慢
方法二:一次读取多行数据
代码如下:
#-*-coding:UTF-8-*-
f=open("/pythontab/code.txt")
while1:
lines=f.readlines(10000)
ifnotlines:
break
forlineinlines:
print(line)
f.close()
一次性读取多行,可以提升读取速度,但内存使用稍大,可根据情况调整一次读取的行数
方法三:直接for循环
在Python2.2以后,我们可以直接对一个file对象使用for循环读每行数据
代码如下:
#-*-coding:UTF-8-*-
forlineinopen("/pythontab/code.txt"):
#printline,#python2用法
print(line)
方法四:使用fileinput模块
importfileinput
forlineinfileinput.input("/pythontab/code.txt"):
print(line)
领取专属 10元无门槛券
私享最新 技术干货