Python の型まとめ — 型を学ぶ意味とクラスへの入口

Python 基礎で学んだデータ型を横断的に整理する総まとめです。型の意味と用途別の使い分け、class で自分だけの型を定義する OOP の入口まで図解で押さえます。

そもそも「型」とは何か

ここまで int, float, str, bool, list, dict, tuple, set など、たくさんのを学んできました。用途に応じて適切な型を選択するのが実務では重要です。

型が「できる操作」を決める
5 + 3(int)8(足し算)'hi' + '!'(str)'hi!'(連結)++

例のように、同じ + という演算子でも型によって実行される処理は異なります

つまり用途ごとに違う型を使い分けることで、変数に「何ができるか」を変えられるのです。

これまでに学んだ型を一望する

Python 基礎で扱った型を、使い道で整理しましょう。「数値計算」「文字情報」「複数の値のまとめ方」のどれを扱いたいかで、選ぶべき型が自然に決まります。

代表的な用途
int商品価格や個数の計算5, 100, -3
float税込金額や割引率の計算3.14, 0.5
boolログイン状態や在庫有無の管理True, False
strユーザー名やコメントの保存'hello'
list買い物カゴや検索結果の並び[1, 2, 3]
tuple緯度・経度のような固定ペア(1, 2, 3)
dictユーザー情報(id / name / email)の保持{'a': 1}
setタグの重複排除、所属判定{1, 2, 3}

変更できる(ミュータブル)か、変更できない(イミュータブル)か」も覚えておきましょう。list / dict / set はミュータブル、それ以外はイミュータブルです。

class で自分だけの型も作れる

ここまで紹介した int / list / dict などはすべて、Python が最初から用意している型(組み込み型) です。実際の開発では「ユーザー」「商品」「注文」のように、組み込み型だけでは表しきれない概念がたくさん登場します。Python では class を使って自分だけの型を定義できます — これがオブジェクト指向プログラミング(OOP) の入口です。OOP の詳しい内容は、後々の記事で改めて紹介していきます。

クラスとインスタンスの関係
class Point(設計図)Point(3, 4)(呼び出し)p(実体)使う生成
# 「点(座標)」という新しい型を定義
class Point:
    def __init__(self, x, y):
        self.x = x
        self.y = y

p = Point(3, 4)   # Point 型のインスタンス(実体)を作る
print(p.x)        # 3

OOP の本格的な学習は別シリーズで

クラス、継承、ポリモーフィズムといったオブジェクト指向の本格的な内容は、独立した別シリーズで扱います。ここでは「組み込み型に加えて、自分の型も作れる」ということを知っておくだけで十分です。

QUIZ

理解度チェック

まずは1問ずつ答えてみましょう。

Q1Python で「型を意識する」ことの目的として、最も適切なものはどれですか?

Q2次の型のうち、ミュータブル(変更可能)な型はどれですか?

Q3Python で自分だけの新しい型を定義するときに使うキーワードはどれですか?