我从服务器获取一个JSON数据,我需要单独解析它,当我使用SimpleNamespace
执行此操作时,我遇到了问题。如何解析这些数据
示例数据:
{
"version":"1.0",
"packageName":"com.some.thing",
"eventTimeMillis":"1503349566168",
"subscriptionNotification":
{
"version":"1.0",
"notificationType":4,
"purchaseToken":"PURCHASE_TOKEN",
"subscriptionId":"my.sku"
}
}
我的代码:
import json
from types import SimpleNamespace
def callback(message):
x = json.loads(message.data, object_hook=lambda d: SimpleNamespace(**d))
print("Version: " + x.version)
print("Package Name: " + x.packageName)
print("Time Milis: " + x.eventTimeMillis)
print("Token: " + x.subscriptionNotification.purchaseToken)
print("Product: " + x.subscriptionNotification.subscriptionId)
print("Type: " + str(x.subscriptionNotification.notificationType))
错误:
AttributeError: 'types.SimpleNamespace' object has no attribute 'subscriptionNotification'
在本例中,我们从一本字典开始。从那时起,代码很少,整个过程变成了“表驱动”。例如,如果您的字典结构发生更改,以至于您向顶层添加了一个新键,那么您只需要对L1表进行相应的更改。希望这将为您提供一些关于如何继续的想法:
相关问题 更多 >
编程相关推荐