打印时间输出在一行而不是滚动,python 2

时间:2017-05-25 00:36:22

标签: python time terminal

有没有办法在一行打印时间输出而不是向下滚动页面。

while True:
    import datetime
    import pytz
    T = datetime.datetime.now()
    print(T)

3 个答案:

答案 0 :(得分:1)

在python 2中,在下面,我尝试使用我的python2.7,即使没有sys.stdout.flush()

也可以工作
while True:
    import datetime
    T = datetime.datetime.now()
    print "{}\r".format(T), ;sys.stdout.flush()

在python 3中

while True:
    import datetime
    T = datetime.datetime.now()
    print(T, end='\r', flush=True)

答案 1 :(得分:0)

import datetime
import sys
import os


os.system('setterm -cursor off')
while True:
    T = datetime.datetime.now()
    sys.stdout.write(str(T))
    sys.stdout.write('\b' * 50)

答案 2 :(得分:0)

你可以从python 3导入打印并执行:

from __future__ import print_function
import time
import sys
import datetime

while True:
    T = datetime.datetime.now()
    print(T, end="\r")
    sys.stdout.flush()
    time.sleep(.4)

此解决方案基于following gist