我正在编写一个程序包,它将允许用户选择一个选项。 即。
print("What is your favourite singer?")
print("Sia")
print("> Rachel Platten")
print("Parade Of Lights")
在这种情况下,“ Rachel Platten”被选为歌手,但是当用户按下“向上”键时,我要重写stdout中的文本以将Sia显示为选定的歌手。
我该怎么做?
谢谢
答案 0 :(得分:1)
因此,我找到了解决此问题的方法。 要将x先前写的行刷新/擦除到stdout:
ERASE_LINE = "\x1b[2K"
for i in range(1, x):
print(f"\x1b[{i}A{ERASE_LINE}")
答案 1 :(得分:0)
这应该在python3中起作用:
import time
for x in range(25):
print(f'\r This is loop: {x}', end='')
time.sleep(0.5)
f字符串中的\r
在显示新打印内容之前清除最后一行,我不确定end=''
的作用,但是没有它,它将无法工作。