tuple
tuple: 値の重複が可能
immutableなオブジェクトの為、辞書のキーに利用可能
in での存在チェックや、max()、 == / is での比較はリストと同じ
()で囲ってもtuple内包表記にならず、ジェネレータ式になる
初期化
numbers = (4, 8, 15, 16, 23, 42) print(numbers) # (4, 8, 15, 16, 23, 42)
初期化 : tuple(値,値,...)
tuple : 組み込み関数
t = tuple(range(5,10)) print(t) # (5, 6, 7, 8, 9) t = tuple("月火水木金土日") print(t) # ('月', '火', '水', '木', '金', '土', '日') a = [1, 2, 3, 4] # リストをタプルへ tu = tuple(a) print(tu) # (1, 2, 3, 4)
結合
a = (4, 8, 15,) b = (16, 23, 42,) c = a + b + (99,) # 1つの場合は、,をつけることが必須 print(c) # (4, 8, 15, 16, 23, 42, 99)
# スライス [開始位置:終了位置:ステップ]
変数で受け取った場合、copyと同じく値コピーとなる為、ポインタは変わる
foods = ("apple", "banana", "pine", "cherry") print(foods[1:3]) # 終了位置はマイナス1 # ('banana', 'pine')
要素の取得
リストと同じ
data = (1, 2 ,3) print(data[0]) # 1
タプルのアンパック
(a, b) = ("100", "200") print(a) # 100 print(b) # 200
複数リストをzipでまとめる
要素はタプルになる
name1 = ["鈴木", "田中", "松本"] name2 = ["イチロー", "圭", "仁志"] t = zip(name1, name2) l = list(t) print(l) # [('鈴木', 'イチロー'), ('田中', '圭'), ('松本', '仁志')]