如何有效地搜索python中的以下json dict并存储到列表或另一个字典?

时间:2012-08-13 23:31:17

标签: python

假设我有以下JSON对象:

{
  "type": "Bands",
  "Artists": [{
    "profile": {
      "name":"Marissa"
      "age": "7"
      "hobbies": [{
        "name":"Skiing",
        "experience": "1 year"
      }]
    },
    "popularsong":{
      "name":"Wishing on a Star"
      "year": 2007
    }
  },
{
    "profile": {
      "name":"Kelsey"
      "age": "7"
      "hobbies": [{
        "name":"Piano",
        "experience": "1 year"
      }]
    }
    "popularsong":{
      "name":"The Twinkle"
      "year": 2007
    }
  },...
  ]
}

假设这个json被加载到json.loads(json_string)的字典中 搜索“年龄”为“7”的所有“艺术家”条目并将其粘贴到数组或其他字典中的最有效方法是什么?

请注意,艺术家条目由“个人资料”和“流行歌曲”组成,例如:

{         “个人资料”:{           “名”:“玛丽莎”           “年龄”:“7”           “爱好”:[{             “名”:“滑雪”,             “经验”:“1年”           },         “流行歌”:{           “名字”:“闪烁”           “年”:2007年         }

1 个答案:

答案 0 :(得分:1)

[artist for artist in myJson['Artists'] if artist['profile']['age'] == 7]可能会有效,如果我正确地在心理上解析该JSON。