我正在尝试关注tutorial on Python coroutines。 示例代码如下:
import time
def follow(thefile):
thefile.seek(0,2) # Go to the end of the file
while True:
line = thefile.readline()
if not line:
time.sleep(0.1) # Sleep briefly
continue
yield line
# Example use
if __name__ == '__main__':
logfile = open("my-file")
for line in follow(logfile):
print(line)
这应该是Unix tail-f
的一个实现,它从头开始逐行读取文件。
然而,除了闪烁的光标外,运行它在控制台中不会产生任何输出。
有关为什么不打印文件行的任何建议?