在Python中执行tail命令的意外工作

时间:2017-10-22 14:09:54

标签: python generator

我正在尝试使用Python中的生成器实现tail命令。这是代码。

import time

def tail(f):
    f.seek(0, 2)
    while True:
        line  = f.readline()
        if not line:
            time.sleep(1)
            continue
        if not line.isspace():
            yield line


for l in tail(open('access.log')):
    print(l)

只要我不更改for循环中的print()函数,此代码就可以正常工作。如果将for循环中的print函数更改为:

for l in tail(open('access.log')):
    print(l, end="")

突然间它停止给我更新。问题是什么 ?

0 个答案:

没有答案