如何使用Python的数据级编写较少的代码

Python功能没有人谈论(但是每个开发人员都应使用)。

来源:KDnuggets
作者的图像| canva

#简介

在Python中写课程可以非常快地重复。您可能有时会定义__init__方法,__repr__方法,甚至是__eq__,只是为了使您的班级可用 - 您就像,“为什么我一次又一次地编写相同的样板?”

__init__ __repr__ __eq__ “为什么我一次又一次地写同一张样板?”

这就是Python的数据级别的来源。它是标准库的一部分,可帮助您以更少的代码编写更清洁,更可读的类。如果您正在使用数据对象(例如配置,模型,甚至只是将一些字段捆绑在一起),那么DataClass就是一个改变游戏规则。相信我,这不仅是另一个夸张的功能,而且实际上是有效的。让我们逐步将其分解。

数据级

#什么是数据类别?

数据级是一个Python装饰器,它会自动生成类的样板代码,例如__init__,__repr__,__eq__等。它是Dataclasse模块的一部分,非常适合主要存储数据的类(思考:代表员工,产品或坐标的对象)。您没有手动编写重复的方法,而是定义田野,在@Dataclass装饰器上拍打,而Python进行了繁重的工作。你为什么要关心?因为它可以节省您的时间,减少错误并使您的代码更易于维护。

@dataclass 您为什么要关心?因为它可以节省您的时间,减少错误并使您的代码更易于维护。

#旧方法:手动写课

如果您不使用Dataclass,这就是您今天可能要做的:

类用户:
    def __init __(自我,名称,年龄,IS_ACTIVE):
        self.name =名称
        self.age =年龄
        self.is_active = is_Active

    def __repr __(自我):
        返回f“ user(name = {self.name},age = {self.age},is_active = {self.is_active})”
这不是可怕的,但是冗长。

#Dataclass Way(又称更好的方式)

现在,这是使用dataclass的同一件事:

输出:

#Dataclass提供的其他功能

//

现在: