Python で同じ行に出力する

Muhammad Waiz Khan 2023年10月10日
  1. print() 関数を用いた Python の同じ行への複数の出力
  2. Python の sys モジュールの stdout.write() メソッドを使った Python での同じ行への複数回の出力
Python で同じ行に出力する

このチュートリアルでは、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?

関連記事 - Python Print