2017-02-22 70 views
0

我是韩国的高中生。为什么Python IDLE打印而不是Backspace?

在python中编程时,我想实现'ghost typing',所以我在python IDLE上编写了这段代码。

for i in range(5): 
    print(i+1, end='') 
    time.sleep(0.05) 
    print('\b', end='') 

但它显示:

12345 

Image - This char() isn't displayed here.

所以我在想,为什么蟒蛇IDLE打印',我应该怎样做才能打印 '退格' 是否正常?

这是在python 3.5.3(与Windows 10),3.6.0(与Windows 7)。

p.s.这个代码在python控制台中,它什么也不打印。

回答

0

IDLE不支持退格字符,

不,IDLE不支持退格,也不是回车,也不是换页符,也不ANSI转义序列。

您期待\ b将光标移动到IDLE交互式shell窗口中的左侧一个单元格。它不这样做。 IDLE在shell窗口中不支持光标寻址,除了换行符和制表符。

source

此外,你使用range()但此时你加入一个i。你可以通过指定一个开始和结束范围来简化它,range(1, 6),所以它会输出1,2,3,4,5。

+0

不,我认为他们正在寻找''\ b''字符来擦除单个字符,而不是''r''来擦除整行,这两个字符都不在IDLE中工作。 – TigerhawkT3

+0

@ TigerhawkT3完全正确,我编辑了我的答案。 – TankorSmash

+0

感谢您的回答,但我只想删除一个字符,并且“\ r”字符也无法正常显示。它打印像'八分音符'标记。 –