本文介绍了在Python中如何使用readline()方法读取文件,并解释了如何判断是否到达文件末尾(EOF)。通过一个简洁的while循环示例,展示了如何避免陷入无限循环,同时澄清了关于空白行与EOF之间的误解。
fp = open('somefile.txt')
while True:
line = fp.readline()
if not line: # 等价于if line == "":
break
Python中,空串的not返回true,即not line时为读到EOF(文件末尾)。
在文件中,如果遇到一个空白行,readline()并不会返回一个空串,因为每一行的末尾还有一个或多个分隔符,因此“空白行”至少会有一个换行符或者系统使用的其他符号。只有当真的读到文件末尾时,才会读到空串""。