Pythonには様々なデータの形(データ構造)がありますが、その中でも「Tuple(タプル)」という型はとても便利です。
この記事では、PythonのTuple型の使い方や特徴、Listとの違いについて、初心者向けにわかりやすく解説します。
この記事の対象
Tupleの基本的な型
変数名 = (要素1, 要素2, 要素3, ...)
- 丸括弧
()
を使って定義します。 - 要素はカンマで区切ります。
- 一度定義したら中身を変更できません!(これを「不変(immutable)」といいます)
Tuple型を用いた使用例
my_tuple = (1, 2, 3, "Hello")
print(my_tuple)
Tupleは要素をカンマで区切って丸括弧(())で囲むことで定義します。上記は、数値と文字を混在させています。Tupleは異なるデータ型であっても問題ない特徴があります。
出力結果
(1, 2, 3, 'Hello')
- 異なるデータ型(整数、文字列など)を混ぜてもOKです。
- Tupleの中に文字列や数値、True/Falseなどを自由に入れることができます。
Tupleは変更できない!(不変性)
test = (55,70,90)
test[0] = 40
print(test[0])
出力結果
「TypeError: 'tuple' object does not support item assignment」
- Tupleは一度作ると 要素の追加・削除・変更ができません。
- 「間違って値を変えたくない」場面で便利です。
辞書のキーとして使用
Tupleは「変更できない(不変)」という性質があるため、辞書(dict
)のキーとして使うことができます。
my_dict = {("John", "Doe"): 28, ("Alice", "Smith"): 22}
my_dict[("John", "Doe")] = 30
print(my_dict)
出力結果
{('John', 'Doe'): 30, ('Alice', 'Smith'): 22}
- List型は変更できるため、辞書のキーには使えません。
- Tupleのような不変なデータは辞書のキーとして最適です。
Listとの違いまとめ
比較項目 | Tuple(タプル) | List(リスト) |
---|---|---|
記述形式 | (1, 2, 3) | [1, 2, 3] |
変更可否 | ❌ 変更できない(不変) | ✅ 変更できる |
要素の追加・削除 | ❌ 不可 | ✅ 可能(append, removeなど) |
処理速度 | ✅ 高速(軽量) | ❌ Tupleよりは遅め |
辞書のキーに使える? | ✅ 使える | ❌ 使えない |
Tupleの便利な使い方
要素のアンパック(複数の変数に分ける)
point = (3, 5)
x, y = point
print(x)
print(y)
出力結果
3
5
まとめ
- Tupleは 一度作ったら変更できない データ構造です
- Listと違って要素を 変更・追加・削除できません
- でも、辞書のキーとして使えるなど便利な特徴もあります
- 「変更してほしくない大事なデータ」に使うのがベスト!