私は、Python 3.1で簡単なプログラムを書いていたし、私はこのつまずい:のpython3スリープ()問題
私はそれが意図したとおりに動作IDLEでこれを実行する場合 - "Initializing."
プリントして、2つのドット、それぞれの後に1を加算入力を待つ。
from time import sleep
def initialize():
print('Initializing.', end='')
sleep(1)
print(" .", end='')
sleep(1)
print(" .", end='')
input()
initialize()
問題は、私は、ファイルを実行するための.pyをダブルクリックしたとき、それは代わりにpythonw.exeのpython.exe上で実行され、そして奇妙なことが起こるということである:それは私を作るすなわち、すべてのsleep()
回に参加します2秒間待ってから、文字列全体を一度にInitializing. . .
に出力します。なぜこれが起こるのですか?それはターミナルで起こっていることを避ける方法はありますか?ウィンドウとLinuxの両方でIDLEを使用するとうまく動作します。
をされて、書き込み後
sys.stdout.flush()
を追加する必要があります。一般に、 'end'を使用すると、あなたは何か起こっていてすぐに何かを書くことになります。 –