我在python中的代码如下所示:
for line in sys.stdin:
print line + "END"
我读到这会逐行迭代stdin,但老实说命令行输出让我觉得它读取所有stdin然后逐行迭代;它打印数据,停止,然后打印更多。我通过制作一个像这样的计数器来测试这个:
for line in sys.stdin:
print i
i+=1
sys.stdout.flush()
它会在96,然后在218等处停止打印,每次打印大约半秒钟,然后同时打印一大堆更多的数字。
有没有办法在读取下一行之前迭代执行循环内容的行?