例如:
x=0
while x!=10000:
print(x)
x += 1
该输出:
0
1
2
3....
但我不希望它产生新的线条。我希望它能替换以前的数字,这样只有数字会改变,而不会创建新行,如果这有意义的话。
您可以在print(..., end='r')
中使用r
而不是n
将光标移动到行首,然后您可以在同一位置进行书写。
最小工作代码
import time
for x in range(100):
print(x, end='r')
time.sleep(0.1)
我添加了time.sleep
来减慢速度。
如果你必须用较短的文本代替较长的文本,那么你可能需要在文本末尾添加空格。
我不确定是否所有终端/控制台都尊重r
。
一些终端可能会使用其他代码来移动光标、清除等。这些代码被curses、npyscreen、urwid、ascimatics等模块用于在文本模式下创建小部件。
BTW:如果您希望它绘制进度条,请参阅模块tqdm