タプルの基礎

Python のデータ型

Jason Myers

Instructor

タプルとは

  • データを順序付きで保持
  • インデックスアクセス
  • イミュータブル
  • ペアリング
  • アンパック可能
Python のデータ型

タプルのzip結合

  • タプルは zip() でリストを結合して作成するのが一般的
  • 2つのリスト: us_cookiesin_cookies
top_pairs = list(zip(us_cookies, in_cookies))

print(top_pairs)
[('Chocolate Chip', 'Punjabi'), ('Brownies', 'Fruit Cake Rusk'), 
('Peanut Butter', 'Marble Cookies'), ('Oreos', 'Kaju Pista Cookies'),
('Oatmeal Raisin', 'Almond Cookies')]
Python のデータ型

タプルのアンパック

  • タプルのアンパックはデータ処理を簡潔に記述できる
us_num_1, in_num_1 = top_pairs[0]

print(us_num_1)
Chocolate Chip
print(in_num_1)
Punjabi
Python のデータ型

ループ内でのアンパック

  • アンパックはループ内で特に効果的
for us_cookie, in_cookie in top_pairs:
    print(in_cookie)
    print(us_cookie)
Punjabi
Chocolate Chip
Fruit Cake Rusk
Brownies
# ..etc..
Python のデータ型

位置の列挙

  • enumerate() 関数もタプル作成に有用
  • ループ内で位置とデータを同時に取得できる
for idx, item in enumerate(top_pairs):
    us_cookie, in_cookie = item
    print(idx, us_cookie, in_cookie)
(0, 'Chocolate Chip', 'Punjabi')
(1, 'Brownies', 'Fruit Cake Rusk')
# ..etc..
Python のデータ型

タプル作成時の注意点

  • zip()enumerate()、または () でタプルを作成
item = ('vanilla', 'chocolate')

print(item)
('vanilla', 'chocolate')
  • 末尾のカンマに注意!
item2 = 'butter',

print(item2)
('butter',)
Python のデータ型

練習しましょう!

Python のデータ型

Preparing Video For Download...