Pythonのプログラムにユーザー入力を受け付ける方法について

Python,イメージ

AI実装検定のご案内

Pythonにおいてユーザー入力を受け付ける方法は非常に基本的かつ重要なスキルです。

ここでは、その基本から応用まで、実践的かつ丁寧に解説します。

目次

基本:input()関数によるユーザー入力の取得

Pythonでユーザーからの入力を受け取る最も基本的な方法は、組み込み関数 input() を使うことです。

name = input("あなたの名前を入力してください:")
print("こんにちは、" + name + "さん!")

解説

  • input() は、ユーザーのキーボード入力を文字列として取得します。
  • 引数にはプロンプト(入力を促す文)を指定できます。
  • 入力は 常に文字列(str型)として返される ため、数値などに使う場合は型変換が必要です。

数値入力を受け付ける:int()float() との組み合わせ

ユーザーに数値を入力してもらいたい場合、文字列を明示的に数値型に変換する必要があります。

age = int(input("年齢を入力してください:"))
print("あなたは来年、" + str(age + 1) + "歳になります。")

注意点

  • 入力が数字でない場合、ValueErrorが発生します。
  • そのため、例外処理(try-except)を使うとより安全です。
try:
    height = float(input("身長をcmで入力してください:"))
    print(f"あなたの身長は {height} cm ですね。")
except ValueError:
    print("数値を入力してください。")

応用:複数の値を一度に受け取る

例えば、カンマ区切りで2つの数字を入力してもらうとき

x, y = input("2つの数字をカンマで区切って入力してください:").split(",")
x = int(x)
y = int(y)
print(f"x + y = {x + y}")

.split()メソッドの活用

  • 入力された文字列を 特定の文字(この例ではカンマ)で分割します。
  • その結果を 複数の変数に同時に代入することができます。

無限ループで有効な入力が得られるまで繰り返す

while True:
    num_str = input("整数を入力してください:")
    if num_str.isdigit():
        num = int(num_str)
        break
    else:
        print("無効な入力です。整数を入力してください。")

print(f"入力された整数は {num} です。")

入力値に条件をつける

たとえば、「1〜10の範囲内の数字のみ受け付ける」ような処理もよく使われます。

while True:
    try:
        value = int(input("1〜10の数字を入力してください:"))
        if 1 <= value <= 10:
            print(f"OK: {value}")
            break
        else:
            print("1〜10の範囲で入力してください。")
    except ValueError:
        print("数字を入力してください。")

よくある失敗と対策

シチュエーション誤り例対策方法
数字が必要なときに文字が入力されたint(input()) に “abc” を入れるtry-except で安全な入力処理にする
空文字や不要なスペースがある” 123 ” のような入力.strip() を使って前後の空白を削除
分割数が合わないa, b = input().split(",") に “1” を入れるsplit() の結果を先に確認してから代入

まとめ

Python,イメージ
方法説明
input()標準的な入力受付。返り値は文字列。
int(input()) / float(input())数値入力時に使用。エラー処理が必要。
.split()複数入力を分割して扱える。
while + try-except安全な入力処理には必須の構造。

実務での活用例(マーケティングにも応用可能)

マーケティングにおいて簡単なヒアリングツールやデータ収集スクリプトをPythonで作ることも可能です。

print("簡易アンケート")
name = input("お名前:")
age = input("年齢:")
email = input("メールアドレス:")

with open("data.csv", "a") as f:
    f.write(f"{name},{age},{email}\n")
print("ご協力ありがとうございました!")

以上、Pythonのプログラムにユーザー入力を受け付ける方法についてでした。

最後までお読みいただき、ありがとうございました。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次