我正在尝试为加载元素清除一行,我有一行打印的部分,我只需要这个
我已经咨询了一些网站(主要是这个网站),但找不到答案,我使用https://trinket.io作为编码器,我也有来自https://python.org的python,可以找到有效的代码吗?
这里是我到目前为止的代码:
import functools
printf = functools.partial(print, end="")
loading():
printf("loading")
printf(".")
time.sleep(.3)
printf(".")
time.sleep(.3)
printf(".")
time.sleep(.3)
printf(".")
time.sleep(.3)
printf(".")
哪个给我这个输出(最后阶段):
loading.....
我想删除上面的行,以便可以多次使用加载顺序。
我相信这些调整会得到您想要的:
import functools
import time
printf = functools.partial(print, end="", flush=True)
def loading():
printf("\r{:12}\r".format(''))
printf("loading")
printf(".")
time.sleep(.3)
printf(".")
time.sleep(.3)
printf(".")
time.sleep(.3)
printf(".")
time.sleep(.3)
printf(".")
loading()
time.sleep(2)
loading()
两项更改:
flush=True
可以确保每个点都在sleep语句之间打印,否则它们将立即全部显示。printf("\r{:12}\r".format(''))
清除行。 '\r'
为回车,将光标移至开头,然后打印一些空格以“清除”(覆盖)12个字符的装载文本,然后再次回车以打印新的装载消息。