在copytree()完成之前,print()不会打印

时间:2015-12-10 09:00:43

标签: python python-3.x

在Python脚本中,我复制了一个目录树,并希望打印一些像这样的文本......

print("Copying... ", end="")
shutil.copytree(src, dest)
print("DONE")

但是,在脚本完成之前,不会打印文本Copying...

3 个答案:

答案 0 :(得分:6)

除非您手动刷新缓冲区,否则输出流直到行尾才会写入终端。

{{1}}

这与您在其他语言(如C和C ++)中找到的行为完全相同,并且出于同样的原因。

答案 1 :(得分:3)

您需要刷新STDOUT,但无需将\^置于图片中。 \$可以为您做到这一点:

sys.stdout

答案 2 :(得分:2)

使用-u选项启动python解释器以使用无缓冲输出。现在,您的打印消息将立即显示