このページで解説している内容は、以下の YouTube 動画の解説で見ることができます。

【Python入門】入出力に使う関数(print、input)

入出力に使う関数(print、input)

 入出力は、プログラムがユーザーと対話するための基本機能です。Pythonでは、画面に情報を表示するためのprint関数と、キーボードからデータを受け取るためのinput関数が用意されています。これらの関数は非常に使いやすく、また便利なキーワード引数を利用することで、出力形式を柔軟に制御することが可能です。ここでは、print関数とinput関数の基本的な使い方と、その応用例について、表や具体的なサンプルプログラムを交えて解説します。

プログラムのダウンロード

 「ダウンロード」から、JupyterLab で実行できるサンプルプログラムがダウンロードできます。ファイルは、ESET Endpoint Securityでウイルスチェックをしておりますが、ダウンロードとプログラムの実行は自己責任でお願いいたします。

1.入出力関数の基本

1.1. print関数の基本

print関数は、指定した値を画面に表示するための関数です。基本的な構文は以下の通りです。

print(値1, 値2, ..., sep=区切り文字列, end=終端文字列)
  • 値1, 値2, …
     複数の値を指定すると、デフォルトでは空白で区切られて表示されます。
  • sepキーワード引数
     各値の間に挿入される文字列を指定します(デフォルトはスペース)。
  • endキーワード引数
     最後に出力する文字列を指定します(デフォルトは改行)。

 例えば、以下のプログラムは、3つの値をカンマとスペースで区切り、最後に「[end]」を付けて表示します。

print("Apple", "Banana", "Cherry", sep=", ", end=" [end]\n")

実行結果

Apple, Banana, Cherry [end]

解説

  • "Apple", "Banana", "Cherry" の各文字列が、カンマとスペース(", ")で区切られて表示されます。
  • 出力の最後は、改行ではなく「 [end]」が付加され、その後に改行が入るように明示しています。

1.2. input関数の基本

input関数は、キーボードから文字列を受け取るための関数です。基本構文は以下の通りです。

input(プロンプト文字列)
  • プロンプト文字列
     ユーザーに入力を促すためのメッセージを表示します。省略可能ですが、入力の意図を明確にするために指定することが一般的です。

例えば、以下のプログラムは、ユーザーに好きな色を尋ね、その回答を表示します。

favorite_color = input("What is your favorite color? ")
print("Your favorite color is", favorite_color)

実行結果

What is your favorite color?  blue
Your favorite color is blue

解説

  • input関数は、"What is your favorite color? " というプロンプトを表示し、ユーザーの入力を文字列として返します。
  • その返り値が変数favorite_colorに格納され、続くprint関数で表示されます。

2.入出力関数の応用例

2.1. print関数の高度な利用例

 print関数では、複数のキーワード引数を組み合わせることで、出力のフォーマットを細かく制御できます。以下の例では、異なる区切り文字と終端文字を指定して、リストの要素を出力します。

items = ["pen", "notebook", "eraser"]
print("Items:", *items, sep=" | ", end=".\n")

実行結果

Items: | pen | notebook | eraser.

解説

  • アスタリスク(*)を使ってリストitemsの各要素を展開し、個々の引数としてprint関数に渡しています。
  • sep=" | " により、各要素が" | "で区切られて出力され、end=".\n" により出力の最後にピリオドが付加され、その後改行されます。

2.2. input関数の応用例

 input関数で受け取った値は常に文字列です。必要に応じて型変換を行うことで、数値計算などに利用できます。以下の例は、ユーザーから2つの数値を入力させ、その合計を計算して表示するプログラムです。

num1 = input("Enter the first number: ")
num2 = input("Enter the second number: ")
# 受け取った文字列を整数に変換して合計を計算
total = int(num1) + int(num2)
print("The total is", total)

実行結果

Enter the first number:  10
Enter the second number:  20
The total is 30

解説

  • input関数により、ユーザーに数値の入力を促し、それぞれnum1とnum2に格納します。
  • その後、int関数を使って文字列を整数に変換し、合計を計算します。
  • 計算された合計がprint関数で表示されます。

まとめ

入出力関数printとinputは、Pythonプログラムでユーザーとの対話を行う基本的なツールです。

  • print関数は、値を表示する際に、sepやendなどのキーワード引数を用いることで、柔軟にフォーマットを制御できます。
  • input関数は、プロンプトを表示してユーザーから文字列を受け取り、必要に応じて型変換を行って利用します。

 これらの関数の使い方を理解しておくと、プログラムのデバッグやユーザーインタフェースの作成が容易になり、より洗練されたPythonコードを書くことが可能になります。