因为正在学习python,总结了一下python读取本地文件的方式,这里以文本文件(.txt)为例,总结出四个方式,并做一下比较。
首先是通过open函数打开本地的一个文件:
c=open(“url.txt”,”r+”) #这里的url.txt为文件的路径 自行设计修改 对于第二个参数的设定,有多个方式,可以参考博客详细讲解。
方式一:
c.readline() #可通过判断读取的行是否为空来终止读取操作
举例:
while 1:
line=c.readline()
if(line!=''):
processcode(line) #相应的操作代码
else:
break
方式二:
一次性读取出文本数据,返回一列表,再对列表中的每行记录做相应的处理
c.readlines() # 可以通过对文件的行数来对每行进行相应的处理
举例:
lines=c.readlines()
for line in lines:
processcode(line)
方式三:
直接迭代方式访问文件中的每行数据;
举例:
c=open('url.txt','r+'
for line in c:
processcode(line)
方式四:
按照字符读取,使用游标定位在文件中的位置。
举例:
ch=c.read(10)
processcode(ch)
并且,read函数操作的游标位置是累加的,举例:
c.read(10) #这时候游标走到了10的位置
c.read(5) #这时候游标走到了15的位置
另外,函数c.tell() 可以返回int值 即当前游标在文件的位置。
四者的比较:
方法一和方法二在执行效率上是差不多的,适合处理中等大小的文件,而方法三的方法,在执行速度上远超前两种方法,适合处理大型文件;方法四处理地比较精细,适合处理小型的文本文件。