用法:
dataclasses.asdict(obj, *, dict_factory=dict)
将数据类
obj
转换为字典(通过使用工厂函数dict_factory
)。每个数据类都转换为其字段的字典,如name: value
对。数据类、字典、列表和元组被递归到。使用copy.deepcopy()
复制其他对象。在嵌套数据类上使用
asdict()
的示例:@dataclass class Point: x: int y: int @dataclass class C: mylist: list[Point] p = Point(10, 20) assert asdict(p) == {'x': 10, 'y': 20} c = C([Point(0, 0), Point(10, 4)]) assert asdict(c) == {'mylist': [{'x': 0, 'y': 0}, {'x': 10, 'y': 4}]}
要创建浅拷贝,可以使用以下解决方法:
dict((field.name, getattr(obj, field.name)) for field in fields(obj))
相关用法
- Python dataclasses.astuple用法及代码示例
- Python dataclasses.dataclass用法及代码示例
- Python dataclasses.KW_ONLY用法及代码示例
- Python dataclasses.field用法及代码示例
- Python dataclasses.make_dataclass用法及代码示例
- Python datetime astimezone()用法及代码示例
- Python datetime.time.fromisoformat用法及代码示例
- Python datetime timetuple()用法及代码示例
- Python datetime.datetime.ctime用法及代码示例
- Python datetime timetz()用法及代码示例
- Python datetime.utcoffset()用法及代码示例
- Python datetime.datetime.fromisoformat用法及代码示例
- Python datetime.datetime.timetuple用法及代码示例
- Python datetime isocalendar()用法及代码示例
- Python date toordinal()用法及代码示例
- Python datetime转date用法及代码示例
- Python date replace()用法及代码示例
- Python datetime.tzinfo()用法及代码示例
- Python date strftime()用法及代码示例
- Python datetime date()用法及代码示例
注:本文由纯净天空筛选整理自python.org大神的英文原创作品 dataclasses.asdict。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。