我最近一直在使用 python 3.7,并正在寻找利用新数据类的方法。基本上我有一个迭代数据类字段并检查它们是否具有默认值的方法:
from dataclasses import fields, MISSING
@classmethod
def from_json(cls)
datacls_fields = fields(cls)
for field in datacls_fields:
if (field.default != MISSING):
#...
但是在官方文档中,它说:
MISSING 值是一个标记对象,用于检测是否提供了 default 和 default_factory 参数。使用此标记是因为 None 是默认值的有效值。任何代码都不应直接使用 MISSING 值。
任何人都知道更好/更pythonic的方式来做到这一点?