开发者

problem with python print function

I am trying to this function:

def sleep(s开发者_运维技巧ec):
    for i in range(sec):
        print(".", end=" ");
        time.sleep(1);

the problem is that it waits for the for loop to finish then it prints everything. If I use the normal print with \n in the end everything works as it should. But with the end=" " it does not.


The stdout is line buffered. You need to flush the output manually.

import sys

def sleep(sec):
    for i in range(sec):
        print(".", end=" ")
        sys.stdout.flush()
        time.sleep(1)
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜