Python基础:命名元组namedtuple的用法

from collections import namedtuple

Student = namedtuple('Student',['id','name','grade'])
student1 = Student(id='1601',name='王宁',grade='9')
student2 = Student('1902','张海',grade='6')
student3 = Student._make(['1803','林彤','7'])

print(student1.id)    #1601
print(student1.name)    #王宁
print(student1.grade)    #9

print(student2[0])    #1902
print(student2[1])    #张海
print(student2[2])    #6

print(student3)    #Student(id='1803',name='林彤',grade='7')

student3 = student3._replace(id='1805')
#_replace方法可以修改对象的属性,与tuple不同,tuple的属性是不可改的。
print(student3)    #Student(id='1805',name='林彤',grade='7')

其中Student = namedtuple('Student',['id','name','grade'])相当于创建了Student类,与以下语句作用相同:

class Student:
    def _init_(self,id,name,grade):
        self.id = id
        self.name = name
        self.grade = grade

个人觉得collections的namedtuple这个方法挺好用的,一行代码就做到了创建类的效果,推荐大家使用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值