1

以前の出力が上書きされるような方法でPythonで出力を作成する方法についてここで説明した後、次のコードを試しました

from __future__ import print_function
import time

for val in range(10):
    time.sleep(0.2)
    print(val, end='\r')

ただし、出力はまったく表示されません。期待どおりにend=\n機能します(つまり、垂直列の0から9までの数字)。出力が表示されない理由は何ですか?何かをフラッシュする必要がありますか?このオペレーティングシステムは依存していますか(Ubuntu Linuxで動作しています)?

4

1 に答える 1

0

'\ n'を取得するまで、ストリームはフラッシュされないと思います。

この記事をご覧ください:出力バッファリングを無効にする

-uを使用してPythonを起動したときに機能するかどうか試してください。

于 2012-12-10T10:03:05.067 に答える