python collection(1)之namedtuple模块的使用

#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)

猜你喜欢

转载自blog.csdn.net/Mr_zhangbz/article/details/83990238