基本的に次のような出力を表示するスクリプトを実行したいと思います。
Installing XXX... [DONE]
現在は、最初に印刷しInstalling XXX...
、次に印刷します[DONE]
。
Installing xxx...
代わりにと を[DONE]
同じ行に印刷するにはどうすればよいですか?
同じ行に新しいメッセージを書き込んで、以前のメッセージを置き換えるという具体的な問題については、 「以前の出力を標準出力に上書きするにはどうすればいいですか?」を参照してください。ここでの回答のほとんどは、現在の行の末尾に新しいテキストを書き込むことに関する質問であると解釈しています。
print
1 つのコマンドを使用して複数のものを一度に出力する場合の問題については、 「複数のもの (固定テキストや変数値) を同じ行に一度に印刷するにはどうすればよいですか?」を参照してください。
ベストアンサー1
Python 3 ソリューション
このprint()
関数はend
、デフォルトで (new line) となるパラメータを受け入れます\n
。このパラメータを空の文字列に設定すると、行末に新しい行が発行されなくなります。
def install_xxx():
print("Installing XXX... ", end="", flush=True)
install_xxx()
print("[DONE]")
Python 2 ソリューション
行末にカンマを入れると、新しい行が発行print()
されなくなりますprint()
(出力の最後に余分なスペースが入ることに注意してください)。
def install_xxx():
print "Installing XXX... ",
install_xxx()
print "[DONE]"