認識 tuple

Python 的資料型別

Jason Myers

Instructor

Tuple, tuple

  • 依序儲存資料
  • 以索引存取
  • 不可變
  • 成對配對
  • 可解包
Python 的資料型別

拉鍊組合 tuples

  • 常用 zip() 將清單配對成 tuples
  • 兩個清單: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 的資料型別

解包 tuples

  • 解包 tuples 是處理資料很直觀的方式
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 的資料型別

列舉位置

  • 另一個實用的 tuple 產生方式是 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 的資料型別

建立 tuples 時要小心

  • zip()enumerate(),或 () 建立 tuples
item = ('vanilla', 'chocolate')

print(item)
('vanilla', 'chocolate')
  • 小心結尾逗號!
item2 = 'butter',

print(item2)
('butter',)
Python 的資料型別

一起來練習吧!

Python 的資料型別

Preparing Video For Download...