2017-10-13 10 views
1

python3を使用して、同じ行の端末で文字列の文字をゆっくりと印刷したいとします。私はこのコードを使用しました。time.sleep関数を使用した印刷が遅い

for i in "Hello": 
    print(i,end='') 
    time.sleep(0.2) 

このコードは(「こんにちは」のLEN)0.2 * 5を待つ秒と私の代わりに印刷機能のsys.stdout.write()関数を使用once.whenですべての文字を印刷し、それが文字を印刷同じ行の代わりに1行ずつ。遅れて同じ行に文字を印刷するには?

答えて

3
import sys 
import time 

for c in "Hello": 
    sys.stdout.write(c) 
    sys.stdout.flush() # <- add this 
    time.sleep(0.2) 

やPython 3 print機能でflushパラメータを使用

print(c, end='', flush=True) 
+0

それはまだ新しい行にすべての文字を印刷し任意の違いはありません。私はubuntuを使用していますなぜこれは動作しません? –

+0

正常に動作するはずです。使用しているのとまったく同じコードをコピーできますか? –

+0

あなたのコードをコピーしましたが、sys.stdout.flush()は効果がありませんでしたが、print関数がフラッシュされました。 –

関連する問題