首頁 > 後端開發 > Python教學 > 如何在同一行覆蓋控制台輸出?

如何在同一行覆蓋控制台輸出?

Susan Sarandon
發布: 2024-12-05 10:01:15
原創
779 人瀏覽過

How to Overwrite Console Output on the Same Line?

如何在同一螢幕行顯示動態輸出

在某些情況下,需要用新資料取代目前控制台輸出,而不是而不是附加它。常見的方法是利用回車符('r')回到目前行的開頭:

簡單版本:

for x in range(10):
    print(x, end='\r')
print()
登入後複製

透過以「r 」結束每個列印語句,遊標將返回到行的開頭,而不前進到下一行。這允許後續的列印語句覆蓋先前的輸出。

行清理:

如果新輸出可能比當前行短,則需要執行額外的步驟清除剩餘字元:

for x in range(75):
    print('*' * (75 - x), x, end='\x1b[1K\r')
print()
登入後複製

轉義序列'x1b[1K'清除從遊標位置到末尾的所有字元

長換行:

對於超過行寬的輸出,可以停用換行以確保連續字元相互覆蓋:

# Disable line wrapping
print('\x1b[7l', end='')

# Overwrite output
for x in range(75):
    print('*' * (75 - x), x, end='\r')

# Re-enable line wrapping
print('\x1b[7h', end='')

# Advance to next line
print()
登入後複製

注意:停用換行後重新啟用換行至關重要,以防止任何錯誤未來控制台輸出的問題。

以上是如何在同一行覆蓋控制台輸出?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板