如何在Python中从嵌套dict中打印多个值

时间:2017-09-21 20:52:43

标签: python json dictionary

我正在尝试解析Get API的输出。我的回复文本是:

{
 "data": [
  {
   "date_created": "22:20:47",
   "name": "test1",
   "id": "12345",
   "status": "0"
  },
  {
   "date_created": "00:09:17",
   "name": "test2",
   "id": "23456",
   "status": "0"
  },
  {
   "date_created": "00:08:02",
   "name": "test3",
   "id": "34567",
   "status": "0"
  },

我有~100个ids。我只需要打印ID并从列表中搜索特定的ID。

到目前为止,我用下一个方法解析:

json_data = get_req.text
python_data = json.loads(json_data)
id = python_data["data"][0]["id"]
print "Object id: ", id

但它只打印一个ID,我需要所有ID。

你有什么想法我怎么打印所有这些?

2 个答案:

答案 0 :(得分:2)

你有一个dicts列表,所以你需要循环:

ids = [x.get('id') for x in python_data["data"]]
print (ids)

答案 1 :(得分:2)

尝试使用以下代码段:

for i in range(len(python_data["data"])):
    print(python_data["data"][i]["id"])

我得到了预期的输出:

12345
23456
34567