-->

如何使用\\ R(蟒蛇),以取代先前线串[复制](How to replace string fro

2019-10-20 21:55发布

这个问题已经在这里有一个答案:

  • 我怎样写在控制台上的同一位置输出? 8个回答

我试图让从60秒开始倒数计时。 我唯一的问题是,当我运行函数,程序打印,像这样的代码:

60

59

58

...等

我怎么会去从第一线更换60,并把它的地方59没有印刷60线?

这里是我的代码:

from __future__ import division
import sys, time 

def countdown():
    seconds = 60
    while seconds >= 0:
        print seconds
        sys.stdout.flush()
        time.sleep(1)
        seconds -= 1

Answer 1:

在你的开始打印一个空行countdown功能。 这将创建所需的行\r工作。 现在,更换print seconds与部分

sys.stdout.write('\r  \r')
sys.stdout.write(str(seconds))

第一行清除在函数开头的印刷以前,空行。 第二个输出秒。

编码:

def countdown():
    seconds = 60
    print ''
    while seconds >= 0:
        sys.stdout.write('\r  \r')
        sys.stdout.write(str(seconds))
        sys.stdout.flush()
        time.sleep(1)
        seconds -= 1


文章来源: How to replace string from previous line using \\r (Python) [duplicate]