对于文本文件,仅使用循环对其进行遍历
for几乎总是可行的方法。没关系,速度是最干净的。
在某些版本的python中,
readline()实际上只读取一行,而
for循环读取大块并将其分成几行,因此速度可能更快。我认为Python的最新版本也使用缓冲,
readline()因此性能差异将很小(
for在微观上可能仍然更快,因为它避免了方法调用)。但是,出于性能方面的考虑选择一个可能是过早的优化。
编辑添加:我只是回顾了一些Python发行说明。Python 2.5说:
现在在文件中使用for行混合对文件的迭代并调用文件对象的read()/ readline()/ readlines()方法是非法的。
Python 2.6引入了
readline()同时支持迭代和同时支持的TextIObase 。
Python 2.7固定交织
read()和
readline()。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)