カテゴリ: Python 更新日: 2025/05/29

Pythonのタプル(tuple)とは?リストとの違いと使い分け

Pythonのタプル(tuple)とは?リストとの違いと使い分け
Pythonのタプル(tuple)とは?リストとの違いと使い分け

先生と生徒の会話形式で理解しよう

生徒

「Pythonのリストはわかったんですが、タプルっていうのもあるって聞きました。何が違うんですか?」

先生

「いい質問ですね。Pythonにはtuple(タプル)というデータ型もあります。リストに似ているけれど、違う特徴を持っていますよ。」

生徒

「具体的にどんな場面で使い分けるんですか?」

先生

「それでは、Pythonのタプルについて、リストとの違いや使いどころを詳しく解説していきましょう!」

-

1. Pythonのタプル(tuple)とは?

1. Pythonのタプル(tuple)とは?
1. Pythonのタプル(tuple)とは?

Pythonのタプル(tuple)とは、複数のデータを1つにまとめて管理するためのデータ型です。見た目や使い方はリスト(list)に似ていますが、タプルは一度作ったら中身を変更できないという特徴があります。

Pythonでは、タプルを丸かっこ ()を使って作ります。


colors = ("赤", "青", "緑")

このように書くと、colorsという名前のタプルに、3つの色がまとめられます。

2. リストとの違いは「変更できるかどうか」

2. リストとの違いは「変更できるかどうか」
2. リストとの違いは「変更できるかどうか」

Pythonのリスト(list)は変更できるのに対して、タプル(tuple)は変更できません

リストなら、あとから値を追加したり削除したりできますが、タプルはそれができません。


colors = ("赤", "青", "緑")
colors[0] = "黄色"  # これはエラーになります

TypeError: 'tuple' object does not support item assignment

このように、タプルの中身を書き換えようとするとエラーになります。

3. タプルを使うメリットとは?

3. タプルを使うメリットとは?
3. タプルを使うメリットとは?

「変更できないのなら、なんでわざわざタプルを使うの?」と思うかもしれません。実はそれこそがタプルの強みなんです。

  • 中身が変わらないとわかっている → 安全に扱える
  • 誤って変更するミスを防げる
  • 辞書(dictionary)のキーとして使える

たとえば、「身長と体重」のようなペアで、固定された情報を表すときにタプルが向いています。

4. タプルの作り方と使い方の基本

4. タプルの作り方と使い方の基本
4. タプルの作り方と使い方の基本

Pythonのタプルを作るには、()を使いますが、1つだけのデータを入れるときは注意が必要です。


num = (5)
print(type(num))

<class 'int'>

これはタプルではなく、ただの数字になってしまいます。1つだけ入れるときは、最後にカンマ , をつける必要があります。


num = (5,)
print(type(num))

<class 'tuple'>
-

5. タプルの中身を取り出す(インデックス)

5. タプルの中身を取り出す(インデックス)
5. タプルの中身を取り出す(インデックス)

リストと同じように、タプルでも[]を使って中身を取り出すことができます。


colors = ("赤", "青", "緑")
print(colors[1])

インデックスはリストと同じく0からスタートします。

6. タプルとリストの変換方法

6. タプルとリストの変換方法
6. タプルとリストの変換方法

タプルは変更できないので、どうしても中身を変えたいときは、一度リストに変換してから操作します。


colors = ("赤", "青", "緑")
colors_list = list(colors)
colors_list.append("黄色")
colors = tuple(colors_list)
print(colors)

('赤', '青', '緑', '黄色')

このように、一時的にリストに変えてから、最後にまたタプルに戻すことで変更が可能になります。

7. 複数の変数に一気に代入する「タプルのアンパック」

7. 複数の変数に一気に代入する「タプルのアンパック」
7. 複数の変数に一気に代入する「タプルのアンパック」

Pythonでは、タプルを使って複数の変数に一気に値を代入する便利な書き方があります。これをアンパック(unpack)と呼びます。


point = (10, 20)
x, y = point
print(x)
print(y)

10
20

このように、x, y = pointと書くと、それぞれの変数に順番に値が入ります。

8. タプルを使う場面の例

8. タプルを使う場面の例
8. タプルを使う場面の例

Pythonでタプルを使うよくある場面としては、次のようなものがあります。

  • 関数の戻り値を複数返したいとき
  • 変更されると困る設定データを扱うとき
  • 座標(X, Y)や範囲(開始値, 終了値)のような固定ペアを扱うとき

たとえば、関数で身長と体重を返す例:


def get_profile():
    return (170, 65)

height, weight = get_profile()
print(height, weight)

170 65

このようにタプルを使うことで、データのまとまりを分かりやすく、安全に扱うことができます。

コメント
コメント投稿は、ログインしてください

まだ口コミはありません。

関連記事:
カテゴリの一覧へ
新着記事
Pythonのエラーメッセージの読み方!よくあるエラーと解決方法
PHPの関数(function)の基本を完全ガイド!初心者でもわかる使い方
Pythonの条件式でNoneを判定する方法!is None vs == None の違い
Pythonのpass文とは?一時的なコードブロックをスキップする方法
人気記事
No.1
Java&Spring記事人気No1
PHPの配列をソートする方法!sort, rsort, asort, ksortの使い方を丁寧に解説します!
No.2
Java&Spring記事人気No2
PHPとは?初心者向けにわかりやすく解説
No.3
Java&Spring記事人気No3
PHPの関数(function)の基本を完全ガイド!初心者でもわかる使い方
No.4
Java&Spring記事人気No4
PHP の文字列の基本操作(連結・切り出し・長さ)の使い方
-