Python | 「変数 × 型(int / float / str)」の基礎編

Python
スポンサーリンク

次は「変数」と「基本的な型(整数 int、小数 float、文字列 str)」をやさしくまとめます。例題をたっぷり入れて、よくあるつまずきも押さえます。


基本のイメージ

  • 変数:値を入れる「名前つきの箱」
  • 型(type):箱の中身の種類を表すラベル。Pythonでは主に次の3つをよく使います。
    • int:整数(例:0, 1, -5, 123
    • float:小数(例:3.14, -0.5, 2.0
    • str:文字列(テキスト。例:"hello", 'あ'

確認方法:

x = 10
print(type(x))  # <class 'int'>
Python

1. 整数 int

  • 用途:個数、カウント、年齢など「整数」で表したい値。
  • 基本の演算:
    • + - * /(割り算 /常に float を返す
    • 切り捨て除算://(例:7 // 23
    • 余り:%(例:7 % 21
    • べき乗:**(例:2 ** 38
  • 例:
a = 7
b = 2
print(a + b)   # 9
print(a / b)   # 3.5 (float)
print(a // b)  # 3   (int)
print(a % b)   # 1
Python

2. 小数 float

  • 用途:金額の計算、割合、測定値など小数を扱うとき。
  • 注意点(浮動小数点の誤差):
    • 0.1 + 0.20.30000000000000004 になる場合がある(内部表現の制約)。
    • 比較は == で厳密にチェックするより math.isclose() などを使う。
  • 例:
x = 0.1 + 0.2
print(x)               # 0.30000000000000004 のように表示されることがある
import math
print(math.isclose(x, 0.3))  # True
Python

3. 文字列 str

  • 用途:名前、メッセージ、ファイルパスなどテキスト。必ず '"で囲む。
  • 連結(+)と繰り返し(*):
s1 = "Hello"
s2 = "World"
print(s1 + " " + s2)  # "Hello World"
print("ha" * 3)       # "hahaha"
Python
  • 数値との注意:"10" + 5 はそのままではエラー(型が違う)。数値に変換するか文字列に変換する。
print(int("10") + 5)   # 15
print("10" + str(5))   # "105"
Python

型変換(キャスト)

  • int(x)x を整数に。"12"123.93(小数切り捨て)
  • float(x)x を小数に。"3.14"3.1422.0
  • str(x)x を文字列に。100"100"
  • 例:
n = int("20")      # 20
f = float("2.5")   # 2.5
s = str(100)       # "100"
Python

数値と文字列を安全に扱う(f文字列)

文字列の中に変数を埋め込むときは f文字列 が便利で読みやすい:

name = "Taro"
age = 20
print(f"{name}さんは{age}歳です")  # Taroさんは20歳です
Python

よくある初心者ミス(型まわり)

  1. "10" + 5 をそのままやる → TypeErrorint() または str() を使う。
  2. 割り算 / が整数を返すと思っている → Python3 の / は常に float。整数が欲しいときは // を使う。
  3. 浮動小数点の比較で == を使う(誤差に注意)。
  4. input() の戻り値は常に str(数値に変換が必要)。

例:ユーザーから年齢を入力して足し算する場合

age_str = input("年齢を入れて: ")  # 例: "20"
age = int(age_str)
print(age + 5)  # 25
Python

例題(手を動かしてみよう)

例題1(基本)

ユーザーに ab を入力して、合計と平均(少数)を表示するプログラムを書いてください。

解答例:

a = int(input("aを入力: "))
b = int(input("bを入力: "))
total = a + b
avg = total / 2  # float
print(f"合計: {total}, 平均: {avg}")
Python

例題2(型の確認)

次のコードの出力と型を予想してください。

x = 5
y = 2
print(x / y)
print(type(x / y))
print(x // y)
print(type(x // y))
Python

答え

2.5
<class 'float'>
2
<class 'int'>

例題3(文字列と数値)

price = "300" のとき price * 2 の結果は?(理由も)
答え"300300"(文字列の繰り返しになるから)。数値の2倍にしたければ int(price) * 2


演習問題(解答付き)

問1

x = "10"
y = 5
# 空欄を埋めて合計を数値として出力
print( ? )
Python

答え

print(int(x) + y)  # 15
Python

問2

a = 1
b = 2.0
c = a + b
print(type(c))
Python

答え<class 'float'>(int と float の演算は float に昇格)

問3

ユーザーに身長(cm、整数)を入力してメートルに換算して表示するコードを書いてください(例:170 → 1.7)。

答え例

cm = int(input("身長(cm): "))
m = cm / 100
print(f"{m} m")
Python

まとめ(初心者が押さえるべきポイント)

  • int / float / str の違いを理解する(演算・結合・比較で挙動が変わる)。
  • input()str。数値扱いしたければ int() / float() に変換する。
  • / は float を返す。整数除算は //
  • 文字列と数値を結合するときは str() や f文字列を使う。
  • 浮動小数点の厳密比較は避け、丸めや math.isclose() を使う。

Python
スポンサーリンク
シェアする
@lifehackerをフォローする
スポンサーリンク
タイトルとURLをコピーしました