本文共 1026 字,大约阅读时间需要 3 分钟。
Python 3.7 引入了 dataclass 装饰器,可以用来声明 Python 类为数据类。数据类适合用于存储数据,具有以下特点:
相比于普通类,dataclass 有以下特点:
注:namedtuple 是 tuple 的子类,其元素是有命名的。
传统类定义通常需要使用 __init__() 方法来初始化对象。以下是一个普通的 Student 类的例子:
class Student: def __init__(self, name, age): self.name = name self.age = age
通过上述代码,可以创建一个 Student 实例,如下所示:
student = Student('张三', 15) print(student.name) # 张三 print(student.age) # 15 dataclass 模块可以帮助开发者在编写 Python 类时节省大量时间。以下是一个使用 dataclass 的 Student 类的示例:
from dataclasses import dataclass @dataclass class Student: name: str age: int
通过上述代码,可以创建一个 Student 实例,如下所示:
student = Student('张三', 15) print(student.name) # 张三 print(student.age) # 15 dataclass 的优势在于可以直接定义属性,无需手动实现 __init__() 方法。dataclasses 模块是 Python 标准库的一部分,无需额外安装即可使用。
转载地址:http://cpafk.baihongyu.com/