[英]Countdown timer in python does not actually display anything
import time
def countdown(duration):
while duration > 0:
mins, seconds = divmod(duration, 60)
timer = '{:02d}:{:02d}'.format(mins, seconds)
print(timer, end='\r')
time.sleep(1)
duration -= 1
print("Time's up!")
countdown(int(input(": ")))
我想在 python 上制作一个计时器并学习如何制作一个。 我理解一切是如何工作的,但是由于某种原因,当我运行代码时,计时器实际上根本没有出现。 在光标闪烁了多长时间我告诉计时器运行后,它会打印“时间到”提示,而没有显示计时器。 等待的持续时间是正确的,所以计时器工作,它只是不显示。
您在评论中说您正在 PyCharm 上运行代码。 那就是问题所在。 您的代码在 Linux 和 Windows 中成功运行; 我刚试过。 但是,在 PyCharm 中,它不显示任何输出。 这取决于 PyCharm 处理回车("\\r")
。 此处的更多信息适用于 YouTrack,但也适用于 PyCharm。
解决此问题的两种方法:
print(timer, end='\\r')
行更改为print(f'\\r{timer}', end='')
(将回车移到打印的开头并从打印中删除换行符)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.