【发布时间】:2018-10-22 18:50:49
【问题描述】:
所以我正在编写一个从文件中读取行的 for 循环程序。
文件行如下所示:
程序:Python 用户:Cma 代码:1234
程序是这样的:
while True:
with open('file.txt', 'r') as fp:
for i in fp:
data = i.split()
program = data[1]
user = data[3]
code = data[5]
total = program + user + code
print(total)
file.seek(-len(i),1)
else:
print("Program Put to sleep!")
time.sleep(5)
我相信我在这段代码中的问题是一个逻辑错误。 该程序应该保持运行并不断检查文件。如果文件中有 3 行,它应该读取每一行然后取消读取,当它发现文件中没有更多行时,程序进入睡眠状态并从新的行条目开始循环。
在我编写的程序中,它从头开始读取。看了一些来自这个平台的例子,但没有帮助,所以想问。干杯
【问题讨论】:
-
“未读”是什么意思?
-
@ktzr 我的意思是程序不会在循环中再次读取读取行!
标签: python file for-loop while-loop