首页 > 解决方案 > 如何从 json 作为函数创建 json

问题描述

需要创建一个function从 json 中提取值。之后我需要解析这么多类似类型的 json 并保存到文件中。

json在下面

    j = '''{ 
   "action": "post",
    "status": "completed",
    "result": {
    "country": "usa",
    "is_allow": 'true',
    "advance details": {
    "value": 'true'
    }
    }
    }'''

转换为 json

k = eval(json.dumps(m))

{'action': 'post', 'status': 'completed', 'result': {'country': 'usa', 'is_allow': 'true', 'advance details': {'value': 'true'}}}

预计出局

{'is_allow': 'true','value': 'true'}

伪代码

免责声明:请不要这样做,m['result']['is_allow']因为我需要作为函数来传递这么多 json

标签: pythonjson

解决方案


在 python 中使用 json 时,应该将其反序列化为 python 对象,如 dict 或 list;为您想要获取的任何键创建一个“通用”的函数是很奇怪的想法,它只是__getitem__of dict,如果您想将事物导出到函数中,请更具体如下:

def get_is_allow_and_value(my_data):
    result = {}
    result['is_allow'] = my_data['result']['is_allow']
    result['value'] = my_data['result']['advance details']['value']
    return result

也不要使用eval你可以简单地使用json.loads这个


推荐阅读