行の最初の 3 文字を上書きせずに、Python スクリプトの cmd 出力を置き換えたいです。これが私が意味することです:
どのように私はそれをしたい:
>>>ID1 downloading
>>>ID1 converting
>>>ID1 finished
と/r
:
>>>ID0 downloading
>>>converting
>>>finished
行の最初の 3 文字を上書きせずに、Python スクリプトの cmd 出力を置き換えたいです。これが私が意味することです:
どのように私はそれをしたい:
>>>ID1 downloading
>>>ID1 converting
>>>ID1 finished
と/r
:
>>>ID0 downloading
>>>converting
>>>finished
これは基本的にPythonの質問ではありません。これは標準の出力質問です。
標準出力はそのようには機能しません。最も簡単なのは、「ID1」を書き直すことです。
それ以外の場合は、コンソール固有のフォーマットコマンド(ANSIなど)またはライブラリなど、より高度なものに移行する必要がありますcurses
。
これを試して。ただし、これは IDLE では機能しない場合があります。
from time import sleep
from sys import stdout
stdout.write("\r%s" % "ID1 downloading")
stdout.flush()
sleep(1)
stdout.write("\r%s" % "ID1 converting ")
stdout.flush()
sleep(1)
stdout.write("\r%s" % "ID1 done ")
stdout.write("\r \r\n") # clean up