2012-03-27 3 views
1

プログラムの出力の配置を変更せずに番号を更新したいと考えています。 Python 2.7.2の標準ライブラリに含まれているものだけを使って、どうやってこれを行うのですか?例えば行や出力の配置を変更せずに番号を更新する方法

私のような出力をしたい:

working on: 9

とに変更します。それが上に表示されている行を変更せずに

working on: 10

。私はこれをどうやってやりますか?また、「点滅」を防止するためにclsを使用しないことをお勧めします。

答えて

5

を参照してください。これを行う方法は、端末の種類(プラットフォームによって異なる場合があります)によって異なります。多くのプラットフォームや端末上で動作する簡単な方法は、バックラインの先頭にカーソルを移動し\r文字を使用することです:

import time 
import sys 
for i in range(10): 
    print "\rworking on:", i, 
    sys.stdout.flush() 
    time.sleep(1) 

を行は、実際に表示されるようにするには、sys.stdout.flush()への呼び出しが必要になる場合があります。

1

いくつかのタイプのGUIに頼ることなくこれを行う簡単な方法はありません。端末を使ってGUIを作成する標準的な方法は、Pythonのcursesモジュールです。アプリケーションでcursesを使用する方法については、Curses Programming with Python.

関連する問題