数値入力とデータ型変換
input() の返り値は常に文字列です。数値として計算に使うには、型変換が欠かせません。ここでは実務でよく使うパターンを集めました。
1. 整数として受け取る:int(input())
age = int(input("年齢を入力してください:"))
birth_year = 2025 - age
print(f"あなたは{birth_year}年生まれです。")
▶ 実行の流れ(「20」と入力した場合)
年齢を入力してください:20 あなたは2005年生まれです。
2. 小数として受け取る:float(input())
height = float(input("身長(cm)を入力:"))
weight = float(input("体重(kg)を入力:"))
bmi = weight / ((height / 100) ** 2)
print(f"BMI:{bmi:.1f}")
▶ 実行の流れ(175cm・68kgを入力した場合)
身長(cm)を入力:175 体重(kg)を入力:68 BMI:22.2
3. 変換失敗に備える
数字以外の文字(例:「abc」)を int() に渡すとエラーになります。
# ❌ 数字以外を入力するとエラー
# int("abc") → ValueError が発生!
# ⭕ 数字の文字列なら変換できる
print(int("42"))
print(float("3.14"))
▶ 出力結果
42 3.14
4. 実用例:簡易電卓
a = float(input("1つ目の数値:"))
b = float(input("2つ目の数値:"))
print(f"{a} + {b} = {a + b}")
print(f"{a} - {b} = {a - b}")
print(f"{a} x {b} = {a * b}")
print(f"{a} / {b} = {a / b:.2f}")
▶ 実行の流れ(10と3を入力した場合)
1つ目の数値:10 2つ目の数値:3 10.0 + 3.0 = 13.0 10.0 - 3.0 = 7.0 10.0 x 3.0 = 30.0 10.0 / 3.0 = 3.33
