问题描述
关于python模块的一个简单问题。 假设我有以下代码:
for i in range(1000):
print i
它将输出以下内容:
1个
2
“剪裁”
999
程序是否可以在同一行上输出所有数字? 我不是在谈论“ 1、2、3 ..”,而是希望将行值更改为当前i
1楼
如果要在终端内绘制GUI,则必须使用 。
2楼
如果您希望每次都覆盖/替换字符,则可能需要使用终端控件库,例如“ curses”。 入门指南。
3楼
对于简单的情况,以下代码可以正常工作:
sys.stdout.write(str(i)+'\r')
sys.stdout.flush()
4楼
import os
for i in range(1000):
print i
os.system("clear")
编辑:如下面的注释中所述,如果使用Windows,请将“清除”更改为“ cls”。
5楼
打印到标准输出的文本不能动态更改。 您需要使用面板。
初始化一个新面板,然后在循环中使用Panel.set_userptr(obj)。