我得到一个嵌套的Json作为请求-响应,试图精确地表示name
字段。然而,在将它转换为Json之后,原本应该是字典的东西变成了字符串。你能帮我指出我做错了什么以及如何处理吗?非常感谢
打印response.json()
的示例结果:
{'subject': 'order', 'id':20, 'info':{"result":"record","name":"orderrecords", "items":[{"name":"apple","type":"food"},{"name":"orange","type":"food"}]}
我试过:
response= requests.get("url")
info= response.json()
print (type(info["items"]) #it is str here
我希望实现的是拥有一个值为“name”的字典,其中in项作为键,“type”作为值。比如{“苹果”:“食品”,“橘子”:“食品”}
在控制台上打印json结果时,预期结果为“”。但是对象/变量(info)可能具有json格式
首先,得到的结果存在语法问题。请添加大括号:
信息={'subject':'order','id':20,'info':{“result”:“record”,“name”:“orderrecords”,“items”:[{“name”:“apple”,“type”:“food”},{“name”:“orange”,“type”:“food”}}
即使对象是字典:
打印(信息[“信息”][“项目”][0]) 打印(信息[“信息”][“项目”][1])
如果结果是json,请导入json&;按上述建议装载
返回的
json
对象无效,因为json
应该有"
而不是'
您可以使用
replace()
将'
替换为"
,然后转换为json
对象:输出:
注:这也将替换作为数据一部分的任何单引号(如有)
相关问题 更多 >
编程相关推荐