Python xreadlines和for循环文件之间的区别
在Python 2.7中具有文件对象:Python xreadlines和for循环文件之间的区别,python,file,Python,File,在Python 2.7中具有文件对象: f = open('my_file', 'r') 循环文件(最常见的方式)和使用xreadlines()函数有什么区别: for line in f: # Do something with line 及 我的意思是,这两个选项都定义了一个生成器,与将所有文件内容加载到内存的readlines()或read()函数不同 其中有没有性能或文件处理方面的改进?或者它们只是做同样事情的等效方法?来自 。。。在处理文件时,最好使用with关键字;再次查
f = open('my_file', 'r')
循环文件(最常见的方式)和使用xreadlines()
函数有什么区别:
for line in f:
# Do something with line
及
我的意思是,这两个选项都定义了一个生成器,与将所有文件内容加载到内存的readlines()
或read()
函数不同
其中有没有性能或文件处理方面的改进?或者它们只是做同样事情的等效方法?来自
。。。在处理文件时,最好使用with
关键字;再次查看文档页面
with open('my_file', 'r') as f:
for line in f:
# do stuff
xreadlines
排在第一位。一般来说,Python从基于列表的函数(range
,items
,zip
)开始,引入了迭代器对应项(xrange,
iteritems,
izip`),然后将原始函数更改为返回迭代器。这是其中一个更改的结尾。还请注意,for uuu in something
将在幕后调用iter(something)
。这意味着它们完全相同!
file.xreadlines()
This method returns the same thing as iter(f).
New in version 2.1.
Deprecated since version 2.3: Use for line in file instead.
with open('my_file', 'r') as f:
for line in f:
# do stuff