从哪里开始解析JSON?

时间:2011-03-13 21:08:10

标签: python json facebook

如果我将JSON数据存储在名为“data”的字符串中(例如下面的示例),我该如何访问特定信息(例如messages->unreadpokes->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']之类的东西可以工作 - 但当我的数据存储为字符串时,它当然不会!

2 个答案:

答案 0 :(得分:5)

自2.6:json模块以来,JSON解析器与Python捆绑在一起。要反序列化字符串,请使用json.loads,例如

import json
data = json.loads(...)

您也可以使用json.load直接从类似文件的对象加载。

答案 1 :(得分:0)

通过JSON解析器运行字符串,将其转换为适合您使用的任何语言的数据结构(Python中的集合,数组,字符串等)。 http://json.org/底部附近列出了一些用于各种语言的数字。