改行を使用してPythonで単純なカウントダウンを実装するのに問題があります。2 つのバージョンがあり、それぞれに問題があります。
印刷版:
for i in range(10):
print "\rCountdown: %d" % i
time.sleep(1)
問題:\r
改行が最後に出力されるため、何も実行されないため、次の出力が得られます。
Countdown: 0
Countdown: 1
Countdown: 2
Countdown: 3
Countdown: 4
Countdown: 5
Countdown: 6
Countdown: 7
Countdown: 8
Countdown: 9
Sys.stdout.write バージョン:
for i in range(10):
sys.stdout.write("\rCountdown: %d" % i)
time.sleep(1)
print "\n"
問題: すべてのスリープが最初に発生し、10 秒間のスリープ後Countdown: 9
に画面に出力されるだけです。\r
が舞台裏で動作していることはわかりますが、スリープ中にプリントを点在させるにはどうすればよいですか?