Python 从dict列表中提取特定键的值
我想将JSON对象中的特定值提取到专用列表中。我的代码如下所示:Python 从dict列表中提取特定键的值,python,json,list,dictionary,Python,Json,List,Dictionary,我想将JSON对象中的特定值提取到专用列表中。我的代码如下所示: url2 = 'https://pqrsiem/api/reference_data/sets/clearsky_DOMAIN?fields=data(first_seen)' request = urllib2.Request(url2,headers=headers) response = urllib2.urlopen(request) parsed_response = json.loads(response.re
url2 = 'https://pqrsiem/api/reference_data/sets/clearsky_DOMAIN?fields=data(first_seen)'
request = urllib2.Request(url2,headers=headers)
response = urllib2.urlopen(request)
parsed_response = json.loads(response.read().decode('utf-8'))
print(json.dumps(parsed_response, indent=4))
输出如下所示:
{"data": [
{
"first_seen": 1474468912626
},
{
"first_seen": 1474468912694
},
{
"first_seen": 1474468912762
},
...
]
}
>>> import json
>>>
>>>
>>> json_data = '{"data": [{"first_seen": 1474468912626}, {"first_seen": 1474468912694}, {"first_seen": 1474468912762}]}'
>>> parsed_response = json.loads(json_data)
>>>
>>>
>>> for element in parsed_response['data']:
... print element['first_seen']
...
1474468912626
1474468912694
1474468912762
我想从“first_seen”
键中提取值,并将它们放入列表中。
我该怎么做呢?我想你可以试试这样的东西:
{"data": [
{
"first_seen": 1474468912626
},
{
"first_seen": 1474468912694
},
{
"first_seen": 1474468912762
},
...
]
}
>>> import json
>>>
>>>
>>> json_data = '{"data": [{"first_seen": 1474468912626}, {"first_seen": 1474468912694}, {"first_seen": 1474468912762}]}'
>>> parsed_response = json.loads(json_data)
>>>
>>>
>>> for element in parsed_response['data']:
... print element['first_seen']
...
1474468912626
1474468912694
1474468912762
如果您的json存储在已解析的_响应中:
for i in range (len(parsed_response["data"])):
print json["data"][i]["first_seen"]
我的Jason对象位于这个变量parsed_response中,它看起来像这样:parsed_response=json.loads(response.read().decode('utf-8'))因此我收到了这样的消息:TypeError:expected string或buffer请查看更新的代码,它与@jmv posted大致相同,但是复杂度要低一点。获取此错误:打印json[“数据”][i][“第一次看到”]TypeError:“模块”对象没有属性“getitem”,当我为范围内的i键入时效果很好(len(parsed_response[“data”]):为范围内的元素打印parsed_response[“data”][i][“first_seen”]:print element[“first_seen”]这是否回答了您的问题?