python namedtuple怎样定义一个类

python namedtuple怎样定义一个类
python namedtuple怎样定义一个类

1、namedtuple是一个非常简单的类别,通过它我们可以很容易地定义我们想要的类别。

它的使用非常简单。例如,如果我们想定义一个学生类别,这个类别个字段:name、score和age,那么这个类别将被写成:

class Student:
    def __init__(self, name=None, score=None, age=None):
        self.name = name
        self.score = score
        self.age = age

2、通过使用namedtuple,我们只需要一行就定义了一个类,但是这样定义的类是没有缺失值的,namedtuple很强大,我们可以通过传入defaults参数来定义缺失值。

Student = namedtuple('Student', ['name', 'score', 'age'], defaults=(0, 0))

可以注意到,虽然我们定义了三个字段,但是我们只设置了两个缺失值。在这种情况下,namedtuple会自动将缺失值匹配上score和age两个字段。因为在Python的规范当中,必选参数一定在可选参数前面。所以nuamdtuple会自动右对齐。

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注