dataclasses模块的三个重要函数:

  1. dataclass:类的装饰器函数,自动生成数据类的各种魔术方法
  2. field:用于精细控制每个字段的行为
  3. fields:用于获取类的字段

后边写数据类的时候用一用这种写法,看看和传统写法相比到底能不能让结构更清晰,更省代码量,一个例子:

利用dataclasses模块提供的函数创建纯数据类
from dataclasses import dataclass, field, fields from typing import List @dataclass class Config: api_key: str timeout: int = field(default=30, metadata={"unit": "seconds"}) retry_count: int = 3 endpoints: List[str] = field(default_factory=list) config = Config(api_key="abc123") print(fields(config))

参考:https://docs.pythonlang.cn/3/library/dataclasses.html