在Python中,判断文件是否结束通常有以下几种方法:
1. 使用`try-except`语句块捕获`EOFError`异常:
try:
while True:
s = input()
except EOFError:
pass
2. 使用`sys.stdin`进行迭代,当输入流结束时,会抛出`EOFError`异常:
import sys
for line in sys.stdin:
a = int(line)
if a != 0:
print(a)
3. 利用文件对象的`seek`方法和`tell`方法来判断文件是否结束:
f = open(filename, 'rb')
f.seek(0, 2) 将文件指针移动到文件末尾
eof = f.tell() 获取当前文件指针位置,即文件末尾位置
f.seek(0, 0) 将文件指针移回文件开头
while True:
bs = f.read(1024) 读取1024字节数据
if not bs: 如果没有读取到数据,表示文件已经结束
break
处理读取到的数据bs
f.close()
以上方法可以帮助你在Python中判断文件是否已经读取到结尾。请根据你的具体需求选择合适的方法