Python:简单的CLI GUI

时间:2010-02-10 18:51:38

标签: python

关于python模块的一个简单问题。假设我有以下代码:

for i in range(1000):
  print i

它会输出以下内容:

  

1

     

2

     

'剪断'

     

999

是否可以让程序输出同一行的所有数字?我不是在谈论“1,2,3 ..”而是我希望线值更改为当前的i

5 个答案:

答案 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)。