1. はじめに
Pythonでプログラムを作成する際、ユーザーからの入力を受け取る方法はとても重要です。本記事では、「Python|標準入力から数値や文字列を受け取る方法」というテーマで、初心者にもわかりやすく標準入力の基本と応用について解説します。
標準入力とは、プログラムが外部(通常はキーボード)からデータを受け取る方法です。Pythonでは主に input()
関数を使用して文字列や数値を受け取ることができます。この記事では、基本構文からよくある使い方、注意点までを丁寧に解説します。
2. Pythonの標準入力:input()の基本
2-1. input()関数とは?
input()
関数は、ユーザーからの入力を文字列として取得するための標準関数です。引数として表示メッセージを指定することで、プロンプトを表示することもできます。
# ユーザーから文字列を受け取る基本例
name = input("あなたの名前を入力してください:")
print("こんにちは、" + name + "さん!")
実行結果:
あなたの名前を入力してください:さとう
こんにちは、さとうさん!
2-2. 数値を受け取るには?
input()
は常に文字列を返すため、数値として利用するには型変換が必要です。
# ユーザーから整数を受け取る例
age = int(input("あなたの年齢を入力してください:"))
print("来年は", age + 1, "歳ですね!")
実行結果:
あなたの年齢を入力してください:25
来年は 26 歳ですね!
3. よくある使い方・応用例
3-1. 複数の値を一度に受け取る split()
一行で複数の値を入力させたいときには split()
関数を組み合わせると便利です。
# スペース区切りで複数の数値を受け取る
a, b = input("2つの整数をスペース区切りで入力してください:").split()
a = int(a)
b = int(b)
print("合計は", a + b, "です")
実行結果:
2つの整数をスペース区切りで入力してください:3 7
合計は 10 です
3-2. map()と組み合わせてスマートに
複数の数値を一括で型変換するには、map()
を使うとコードがすっきりします。
# 一行で複数の数値を受け取って合計する
a, b, c = map(int, input("3つの整数を入力してください:").split())
print("合計は", a + b + c, "です")
実行結果:
3つの整数を入力してください:5 10 15
合計は 30 です
3-3. 文字列をリスト化する
文字列の各文字を個別に扱いたい場合には、list()
を使って分解できます。
# 入力文字列を1文字ずつリストに分解
text = input("文字列を入力してください:")
char_list = list(text)
print("分解結果:", char_list)
実行結果:
文字列を入力してください:apple
分解結果: ['a', 'p', 'p', 'l', 'e']
4. 注意点・エラー対策
4-1. 型変換エラーに注意
int()
や float()
で型変換する際、数値以外を入力されるとエラーになります。
# 型変換エラーの例
try:
number = int(input("整数を入力してください:"))
print("2倍すると", number * 2, "です")
except ValueError:
print("エラー:整数を入力してください。")
実行結果:
整数を入力してください:abc
エラー:整数を入力してください。
4-2. 入力が空文字列の場合
input()
の入力が空文字列だと、型変換などでエラーになることがあります。バリデーションチェックを取り入れましょう。
# 空文字対策
value = input("値を入力してください:")
if value == "":
print("入力が空です。")
else:
print("入力された値:", value)
実行結果:
値を入力してください:
入力が空です。
5. まとめ
本記事では「Python|標準入力から数値や文字列を受け取る方法」について、基本から応用まで丁寧に解説しました。
input()
は標準入力の基本- 数値を扱うには
int()
やfloat()
での型変換が必要 split()
やmap()
を活用すると複数入力も簡単に- 型変換時のエラー処理を忘れずに
ユーザーからの入力を受け取る機能は、アンケートツールや電卓アプリなど、さまざまなシーンで役立ちます。Pythonの基礎力を固めるためにも、ぜひ繰り返し練習してみてください。
学習のコツ:最初は文字列として受け取って、print()で出力しながら変換や処理を確認すると、仕組みを理解しやすくなります。