Python中readline何时算EOF

Python020

Python中readline何时算EOF,第1张

Python中,空串的not返回True,即not line时为读到EOF

简单地说就是空字符串"",不放心可以用if not测试一下读回来的东西

希望我的回答可以帮到你:-)

一般情况下,我们是这么读文件的:for line in open("xxx"):print line但是有时候,我们想自己控制读取每一行,即open得到fp后,readline(),何时是退出呢?经过查找N多文档,得到一种很隐晦的说法是当返回空串时表示退出。于是写法是:fp = ....while True:line = fp.readline()if len(line)==0:break#.....Do what you want其实,可以不用len判断,而用not判断。Python中,空串的not返回True,即not line时为读到EOF,如下:fp = ....while True:line = fp.readline()if not line:break#.....Do what you want