用 Python 中的動態計數器取代控制台輸出
厭倦了 Python 控制台輸出淹沒螢幕?讓我們探索如何建立在不覆蓋前一行的情況下進行更新的計數器。
一種簡單的方法是使用「r」將遊標返回到目前行的開頭,從而有效地替換現有的輸出。當您的輸出長度保持不變時,這是一個有效的解決方案:
<code class="python">sys.stdout.write("\rDoing thing {}".format(i)) sys.stdout.flush()</code>
但是,如果您的輸出長度可能變化,則需要更複雜的解決方案。考慮這個進度條實現:
<code class="python">def start_progress(title): sys.stdout.write(title + ": [" + "-"*40 + "]" + chr(8)*41) sys.stdout.flush() def progress(x): x = int(x * 40 // 100) sys.stdout.write("#" * (x - progress_x)) sys.stdout.flush() def end_progress(): sys.stdout.write("#" * (40 - progress_x) + "]\n") sys.stdout.flush()</code>
此程式碼允許您透過呼叫 start_progress 顯示可自訂的進度條,使用 Progress(x) 更新它,其中 x 是百分比,最後使用 end_progress 結束它。
因此,下次您希望控制台輸出更具互動性和使用者友善性時,請考慮這些在 Python 中建立動態計數器的技術。
以上是如何在 Python 中用動態計數器取代靜態控制台輸出?的詳細內容。更多資訊請關注PHP中文網其他相關文章!