簡體   English   中英

python中的倒數計時器實際上不顯示任何內容

[英]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='') (將回車移到打印的開頭並從打印中刪除換行符)
  • 在 PyCharm 的運行/調試配置(編輯配置...)中啟用“在輸出控制台中模擬終端”。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM