1
Amy 原创整理|资料核验:2026-10-30
Python dataclasses文档说明,field(default_factory=...)接收一个无参数可调用对象,需要默认值时才调用。用default_factory=list,就可以为每个实例分别创建空列表;default与default_factory不能同时指定。
教学示例:给购物清单类定义 items: list = field(default_factory=list),再创建两个实例。向第一个实例的items添加物品,第二个实例的默认列表仍为空。这里传入的是list这个工厂,不是提前调用list()得到的某一个列表。
Amy建议练习时不只检查第一个实例能否添加数据,还要同时创建两个实例,验证它们互不影响。这个小检查能帮助分清“每次新建一个默认对象”和“复用已经存在的对象”。