Python で同じ行に出力する
このチュートリアルでは、Python で複数のものを同じ行に出力するための様々なメソッドを説明します。通常、print()
メソッドは毎回改行した内容を出力します。Python で複数のものを同じ行に出力するには、以下のような方法があります。
print()
関数を用いた Python の同じ行への複数の出力
print
メソッドは文字列や任意の有効なオブジェクトを入力として受け取り、それを文字列に変換して画面に出力します。Python の print
関数を使って複数のものを同じ行に出力するには、Python のバージョンによって異なる方法を踏まなければならません。
Python 2.x の場合
Python 2.x では、print
メソッドの最後に ,
を付けることで、同じ行に複数回出力することができます。以下のサンプルコードは、このための print
関数の使い方を示しています。
print "hello...",
print "how are you?"
出力:
hello...how are you?
Python 3.x
また、Python 3.x では print()
メソッドの end
パラメータの値はデフォルトでは \n
に設定されているので、変更する必要があります。以下の例では、print()
メソッドの end
パラメータに ""
を指定して、同じ行に複数回出力する方法を示しています。
print("hello...", end=""),
print("how are you?")
出力:
hello...how are you?
Python の sys
モジュールの stdout.write()
メソッドを使った Python での同じ行への複数回の出力
sys
モジュールの stdout.write()
メソッドは出力を画面に表示します。デフォルトでは stdout.write()
は文字列の末尾に改行を追加しないので、同じ行に複数回出力するのに使うことができます。
print()
メソッドとは異なり、このメソッドは Python のすべてのバージョンで動作しますが、stdout.write()
メソッドを使うにはまず sys
モジュールをインポートする必要があります。以下の例は、stdout.write()
メソッドを使って Python で複数の文字列を同じ行に表示する方法を示しています。
import sys
sys.stdout.write("hello...")
sys.stdout.write("how are you?")
出力:
hello...how are you?