[英]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.