print又时会几个任务执行完才一起打印,在使用循环时还会将结果一起打印。因此设置flush参数可以让输出结果立即执行。flush参数默认为Flase。

 

"\b"是回退一个字符,”\r“是回退一行。借助循环可以动态打印,或者删除重复打印。

import time


def waiting(cycle=20, delay=0.3):
    for i in range(cycle):
        for ch in ["-", "\\", "|", "/"]:
            print("\b%s"%ch, end="",flush=True)
            time.sleep(delay)


waiting()

 动态显示时间

import time

while True:
    print(time.strftime("当前时间为:%Y-%m-%d %H:%M:%S", time.localtime()), end="")
    time.sleep(1)
    print("\r", end="", flush=True)