![](/img/trans.png)
[英]Difference in read(), readline() and readlines() in Python
[英]readlines() cannot read lines after using readline()
以下简单代码读取CSV文件并返回文件的行数。 正如您在输出中看到的,该文件有501行。
>>> import codecs
>>> f = codecs.open("tmp.csv", "r", "utf_8")
>>> print len(f.readlines())
501
但是如果我在使用readlines()之前插入readline(),则后者不会到达文件的末尾。
>>> import codecs
>>> f = codecs.open("tmp.csv", "r", "utf_8")
>>> f.readline()
>>> print len(f.readlines())
1
我的代码中有任何基本错误吗? 如何混合readline()和readlines()? (实际上我不需要在我的真实程序中混合这两个函数,但我只是好奇...)
您可以在https://dl.dropboxusercontent.com/u/16653989/tmp/tmp.csv下载该文件
这与codecs
模块有关。 因为当你使用常规的python open
语句做同样的事情时,它按预期工作:
f = open('tmp.csv')
f.readline()
>>> print len(f.readlines())
500
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.