我想解析json并将其保存在数据类中以模拟DTO。目前,我必须手动将所有的json字段传递到数据类。我想知道有没有一种方法可以通过添加json解析的dict ie来实现。“dejlog”到数据类,并且所有字段都被自动填充。
from dataclasses import dataclass, asdict
@dataclass
class Dejlog(Dataclass):
PK: str
SK: str
eventtype: str
result: str
type: str
status: str
def lambda_handler(event, context):
try:
dejlog = json.loads(event['body'])
x = Dejlog(dejlog['PK'])
print(x)
print(x.PK)
2条答案
按热度按时间myzjeezk1#
正如在其他评论中提到的,您可以使用内置的
json
库,如下所示:bfnvny8b2#
只要json对象中没有任何意外的键,解包就可以工作,否则您将获得TypeError。另一种方法是使用classmethod来创建数据类的示例。以前面的例子为基础: