2017-02-20 86 views
0

改变我知道使用Python中“\ r”之一,但它并没有对字符串的长度缩短了工作(如下图所示的例子):如何更换控制台输出,如果字符串长度

import time 
List = ['a','b','c','d','e'] 
for i in range(5, 0, -1): 
    print(''.join(List[0:i]), end = '\r') 
    time.sleep(1) 
# Will always output 'abcde' 

让我们假设我想输出如下: “ABCDE” 下一次迭代线1所示: “ADCD” 第二次迭代线1所示: “ABC” 等... 我怎么会去吗? 感谢您的任何帮助:)

回答

0

您可以使用python3和print('\r' + ''.join(List[0:i]) + ' '*(5-i), end='')替换打印语句,也许你会得到你想要的。

完整代码:

import time 
List = ['a','b','c','d','e'] 
for i in range(5, 0, -1): 
    print('\r' + ''.join(List[0:i]) + ' '*(5-i), end='') 
    time.sleep(1) 
+0

感谢,对于好作品出来帮助:)! – NightShade