在Python 2.7中重叠打印行

0 投票
2 回答
645 浏览
提问于 2025-04-18 10:24

我想要打印一个新的内容,这个新的内容能够替换掉同一行上的旧内容。我的做法是:

for i in range(0,10000): 
     print "\r", i,

但是这样做的结果是:

9999 1415 

我本来只想看到9999,但我不知道为什么会打印出1415。

之前有人对此话题给过答案,但他们主要是针对python 3.x的。我用的是python 2.7和Canopy。

2 个回答

0

IDLE控制台不支持使用\r来覆盖已经打印的字符。如果你在命令行中运行Python,这种方法是可以用的。

对于\b也是一样。你的程序没有问题。

0

你确定吗?这是我在Python 2.7中的输出。运行得很好。

 Python 2.7.2 (default, Oct 11 2012, 20:14:37) 
[GCC 4.2.1 Compatible Apple Clang 4.0 (tags/Apple/clang-418.0.60)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> for i in range(0,10000): 
...      print "\r", i,
... 
9999 
>>> 

撰写回答