【Python】データ型一覧とその違いを初心者にもわかりやすく解説!

Pythonでは、値の種類ごとに「データ型」が用意されています。

それぞれの型には役割があり、使い分けることで柔軟で効率的なプログラムを書くことができます。

この記事では、Pythonでよく使われる主要なデータ型を網羅しながら、特徴や違い、使い方の具体例をわかりやすく解説します。

数値型(Numeric Types)

int(整数)

整数を扱う型です。小数点は使えません。

float(浮動小数点数)

小数を扱う型です。

complex(複素数)

数学で出てくる複素数を扱うための型です。実部と虚部を j を使って表します。

文字列型(String)

str(文字列)

テキストを扱う型です。文字列は ' ' または " " で囲んで定義します。

論理型(Boolean)

bool(真偽値)

True または False のどちらかを表す型です。条件分岐や比較に使います。

リスト型(List)

順序のある複数の要素をまとめて管理できるデータ型。要素の変更も可能です。

リストは [ ] で定義し、インデックスで要素にアクセスします。

タプル型(Tuple)

リストと似ていますが、中身を変更できない(イミュータブル)データ型です。

変更の必要がない固定データを扱うときに使います。

辞書型(Dictionary)

キーと値のペアでデータを管理する型です。順序付きでアクセスできます。

{} で定義し、キーで値にアクセスします。

集合型(Set)

重複のない要素の集まりを扱う型です。順序は保証されません。

重複を自動で除外してくれるので、ユニークな値を扱いたいときに便利です。

None型

None

「何もないこと」を表す特別な型です。未設定や初期値の意味で使われます。

関数が値を返さないときにも、Pythonは自動で None を返します。

バイト型(Bytes・Bytearray)

bytes(読み取り専用のバイナリデータ)

bytearray(変更可能なバイナリデータ)

主にファイルの読み書きやバイナリ通信で使います。

range型

指定した範囲の数値を順番に扱えるオブジェクトです。ループ処理に便利。

メモリ効率よく大きな範囲を生成できます。

メモリビュー型(memoryview)

バイナリデータに対して部分的にアクセスしたいときに使います。

大きなデータ処理で効率化したいときに便利ですが、初心者はあまり使いません。

まとめ

Pythonの主なデータ型とその特徴は以下の通りです:

型名 説明
int 整数 x = 42
float 小数 pi = 3.14
complex 複素数 z = 1 + 2j
str 文字列 "Hello"
bool 真偽値(True / False) flag = True
list 可変な順序付きコレクション [1, 2, 3]
tuple 不変な順序付きコレクション (1, 2, 3)
dict キーと値のペア {"name": "Bob"}
set 重複なしの集合 {1, 2, 3}
NoneType 「何もない」 None
bytes 読み取り専用バイナリデータ b"abc"
bytearray 書き換え可能なバイナリデータ bytearray(b"abc")
range 範囲を表すオブジェクト range(5)
memoryview バイナリデータへの効率的アクセス memoryview(b"abc")

Pythonのデータ型はとても柔軟で、どんなデータにも対応できるようになっています。

初めは intfloatstrlistdict あたりをしっかり使いこなせるようになるだけでも、実用的なプログラムは十分書けます。

慣れてきたら他の型も少しずつ覚えていきましょう。

おすすめの記事