关于python模块的一个简单问题。假设我有以下代码:
for i in range(1000):
print i
它会输出以下内容:
1
2
'剪断'
999
是否可以让程序输出同一行的所有数字?我不是在谈论“1,2,3 ..”而是我希望线值更改为当前的i
答案 0 :(得分:3)
如果您想在终端内绘制GUI,则必须使用curses module。
答案 1 :(得分:3)
如果您希望每次都覆盖/替换角色,您可能需要使用像'curses'这样的终端控制库。 Here's a Python how-to article让你开始。
答案 2 :(得分:2)
对于一个简单的例子,以下代码可以正常工作:
sys.stdout.write(str(i)+'\r')
sys.stdout.flush()
答案 3 :(得分:2)
import os
for i in range(1000):
print i
os.system("clear")
编辑:如下面的评论中所述,如果使用Windows,请将“清除”更改为“cls”。
答案 4 :(得分:1)
打印到stdout的文本无法动态更改。您需要使用面板。
http://docs.python.org/library/curses.panel.html
初始化一个新面板,然后在循环中使用Panel.set_userptr(obj)。