如何在Python中返回支持点符号访问的JSON结构
实现支持点访问的myFunction函数
核心逻辑是将传入的列表内的字典转为支持点属性访问的对象,无需修改函数外的任何代码,修改后的myFunction实现如下:
from types import SimpleNamespace def myFunction(jsonData): # 取列表第一个元素的字典,解包后转为支持点访问的对象 return SimpleNamespace(**jsonData[0])
实现说明
- 输入的
jsonData是外层包裹的列表,实际存储字段的字典在jsonData[0]位置 SimpleNamespace是Python标准库内置的类,会自动将传入的关键字参数绑定为实例属性,无需额外自定义类- 运行
main函数后会正常输出What day is it? Monday,完全符合需求。
如果不想额外导入依赖,也可以用自定义空类的方案实现,效果完全一致:
def myFunction(jsonData): class Temp: pass res = Temp() data = jsonData[0] res.question = data["question"] res.answer = data["answer"] return res
内容的提问来源于stack exchange,提问作者xMet
相关产品推荐
相关产品推荐

