我正在尝试创建一个在更新上一个条目时在“正在加载”,“正在加载”,“正在加载..”,“正在加载...”和“正在加载....”之间切换的加载文本。 。我在网上发现了类似的情况,其中使用sys.stdout
或\r
结束打印功能,但都没有运气
我正在使用的代码是:
import time
tick = 0
while True:
print("Loading" + "." * tick, end="\r")
if tick < 4:
tick += 1
time.sleep(0.4)
else:
tick = 0
我得到的输出是:
LoadingLoading.Loading..Loading...Loading....LoadingLoading.Loading..Loading...
直到我强制退出执行。我还没有看到其他线程中提到的问题,但是如果有人知道是什么原因导致了该问题,我将非常感激。
答案 0 :(得分:0)
根据您的平台,您需要回车符\r
和换行符\n
或仅换行符。通常,我发现您可以\r\n
还取决于是否要在“加载”之间清除整个屏幕,您可能必须调用系统调用(这因平台而异),才能在要打印的“加载”之间清除屏幕。这样就不需要调用\r\n
了,因为每次打印时都会调用到一个新的控制台窗口。
您可以查看here的操作方法。