我正在使用Python编写一个小型命令行游戏,使用tqdm模块显示进度条。我使用msvcrt模块监听用户输入,以中断进度。一旦被中断,用户可以通过在命令行提示符中输入“restart”来重新开始。第二次显示进度条时,不会更新同一行的进度,而是每次创建一个新行。
如何将其显示在同一行上?
这段代码片段说明了我对进度条的使用。
def transfer():
for i in tqdm.tqdm(range(1000), desc="Transfer progress", ncols=100, bar_format='{l_bar}{bar}|'):
sleep(.1)
if msvcrt.kbhit():
if msvcrt.getwche() == ' ':
interrupt()
break
def interrupt():
type("File transfer interrupted, to restart the transfer, type 'restart'")