我想更新數字而不更改其在程序輸出中的位置。我將如何去使用python 2.7.2的標準庫中包含的內容?如何在不更改輸出行或輸出位置的情況下更新數字
例如,我想輸出像:
working on: 9
和更改爲:
working on: 10
而不改變其顯示就行了。我將如何去做這件事?我還希望您不要使用cls
作爲防止「閃爍」。
我想更新數字而不更改其在程序輸出中的位置。我將如何去使用python 2.7.2的標準庫中包含的內容?如何在不更改輸出行或輸出位置的情況下更新數字
例如,我想輸出像:
working on: 9
和更改爲:
working on: 10
而不改變其顯示就行了。我將如何去做這件事?我還希望您不要使用cls
作爲防止「閃爍」。
如何執行此操作取決於您的終端類型(可能位於您的平臺上)。在許多平臺和終端工作的一個簡單方法是使用\r
字符移動光標回行的開頭:
import time
import sys
for i in range(10):
print "\rworking on:", i,
sys.stdout.flush()
time.sleep(1)
爲了使行實際上出現,你可能需要調用sys.stdout.flush()
。
沒有任何簡單的方法來做到這一點,而不訴諸某種類型的圖形用戶界面。使用終端創建GUI的標準方式是python的curses模塊。有關如何在您的應用程序中使用curses的說明,請參閱:Curses Programming with Python.