如果我将JSON数据存储在名为“data”的字符串中(例如下面的示例),我该如何访问特定信息(例如messages->unread
或pokes->most_recent
)?
{
"messages": {
"unread": 0,
"most_recent": 1300047276
},
"pokes": {
"unread": 0,
"most_recent": 0
},
"shares": {
"unread": 0,
"most_recent": 0
},
"friend_requests": [],
"group_invites": [],
"event_invites": []
}
我希望data['messages']['unread']
之类的东西可以工作 - 但当我的数据存储为字符串时,它当然不会!
答案 0 :(得分:5)
自2.6:json
模块以来,JSON解析器与Python捆绑在一起。要反序列化字符串,请使用json.loads
,例如
import json
data = json.loads(...)
您也可以使用json.load
直接从类似文件的对象加载。
答案 1 :(得分:0)
通过JSON解析器运行字符串,将其转换为适合您使用的任何语言的数据结构(Python中的集合,数组,字符串等)。 http://json.org/底部附近列出了一些用于各种语言的数字。