循环空闲与终端的打印进度

2024-04-24 03:17:37 发布

您现在位置:Python中文网/ 问答频道 /正文

我写了一个脚本,在某个时候我想打印出来 循环的进程。 我不想一行一行地打印它,而是要当前的 在每次迭代中要覆盖的行。 问题是,如果我从终端执行脚本,它可以正常工作,但是如果我在空闲状态下运行脚本,它总是以一种特定的方式打印进度 新线。你知道吗

这只是出于好奇,我想了解为什么这两个 表现不同。你知道吗

下面是代码的简化示例:

import time
import sys

max_iter = range(5)

for i in max_iter:

    prog = (i + 1) / float(len(max_iter))
    sys.stdout.write("\r {}%".format( prog * 100 ) )
    sys.stdout.flush()
    time.sleep(1)

Tags: 代码import脚本终端time进程状态stdout