Python奇淫巧技——使用元組代替字典薄疚,同時為元組元素命名碧信,提高可讀性
場景:
一般使用字典定義一個人的姓名,年齡街夭,性別砰碴,郵箱等信息是非常方便的,比如:
student_one = {'name': 'Tom', 'age': 19, 'sex': 'male', 'email': 'tom123@hotmail.com'}
使用元組表示則為:
student_one = ('Tom', 19, 'male', 'tom123@hotmail.com')
使用元組替代字典表示信息的時候板丽,一方面很難分別元素的含義衣式,另一方面在取值的時候,需要通過索引(index)來獲得檐什,即:
student_one[0]
student_one[1]
student_one[2]
student_one[3]
當(dāng)代碼量很多的時候碴卧,很難分辨索引分別代表的值是什么,因此需要給每個索引命名乃正,來解決難以分辨的問題:
- 第一種方案:給索引取"別名"
name = 0
age = 1
sex = 2
email = 3
# 這樣即可通過索引的"別名"來取值
升級:
# 通過組包來完成
name, age, sex, email = range(4)
- 第二種方案:使用標(biāo)準(zhǔn)庫中的collections.namedtuple來替代內(nèi)置的tuple
from collections import namedtuple
student = namedtuple('student', ['name','age','sex','email'])
student_one = student("tom", 16, "male", "tom123@hotmail.com")
print(student_one)
歡迎訪問