Pythonには様々なデータ構造があります。その中でもtuple(タプル)型はlist型と違った点もあります。使用する上で押さえておきたいポイントをまとめています。
ここでは、Pythonにおける「Tuple型」について解説しています。
この記事の対象
Tupleの基本的な型
変数名 = (数値("文字")1,数値("文字")2,....,)
List型と違う点は丸括弧を利用していること、定義した要素を変更することができないことが大きな特徴です。
Tuple型を用いた使用例
my_tuple = (1, 2, 3, "Hello")
print(my_tuple)
Tupleは要素をカンマで区切って丸括弧(())で囲むことで定義します。上記は、数値と文字を混在させています。Tupleは異なるデータ型であっても問題ない特徴があります。
辞書のキーとして使用
my_dict = {("John", "Doe"): 28, ("Alice", "Smith"): 22}
my_dict[("John", "Doe")] = 30
print(my_dict)
辞書のキーとして使用する事も可能です。要素だけを安全に操作したい場合にキーをTuple型にして使用する場合があります。
結果
{('John', 'Doe'): 30, ('Alice', 'Smith'): 22}
Tupleの不変性
Tuple型はList型とは違って一度生成するとその要素を変更できない特徴があります。Tuple内の要素を追加、削除、変更ができません。
test = (55,70,90)
test[0] = 40
print(test[0])
上記は、testというTuple型の0番目に40を入れようとしているプログラムになります。こちらは結果として、Tuple型の不変性によるエラーになります。
結果
「TypeError: 'tuple' object does not support item assignment」
この不変性は、特定のデータが変更されたくない場合に便利です。たとえば、日付や時間の情報をTupleとして格納すると、その情報が誤って変更される心配がないです。