python collection(1)之namedtuple模組的使用
阿新 • • 發佈:2018-11-17
#nametuple模組即是tuple的深入,繼承自tuple類
- 可迭代
- 通過索引訪問資料
- 可迭代
(1) tuple的拆包
user_tuple = ("Body_1",20,100)
name,age,score = user_tuple #拆包操作
print(name,age,score)
列印結果:boddy 29 175
(2)拆包位置對應的屬性轉化為可變的
name,*other = user_tuple #name -> "body_1",other ->[20,100] print(name,other) #列印結果:boddy [29, 175] user_dict ={} user_dict[user_tuple] ="10" print(user_dict) #列印結果: {('boddy', 19, 175): '10'}
namedtuple形式
(1) 通過元素屬性訪問元素
from collections import namedtuple
User = namedtuple("User",("name","age","height"))
user =User("boddy",19,175)
print(user.name,user.age,user.height)
#列印結果:boddy,19,175
(2)通過可變引數或者關鍵字引數訪問元素
#通過可變引數*args訪問元素 User = namedtuple("User",("name","age","height")) user_tuple =("boddy",20,180) user = User(*user_tuple) #通過關鍵字引數**kwargs訪問元素 user_dict={ "name" : "boddy", "age" : 22, "height" :175 } user =User(**user_dict) #使用_make方法訪問元素,傳入的為元祖 user=User._make(user_tuple)