我想替换我的 Python 脚本的 cmd 输出,而不覆盖该行的前三个字符。这就是我的意思:
我想要它:
>>>ID1 downloading
>>>ID1 converting
>>>ID1 finished
与/r
:
>>>ID0 downloading
>>>converting
>>>finished
我想替换我的 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