需要在python中获取JSON的特定键的所有值

时间:2017-10-05 11:41:45

标签: python json python-2.7

我在python中从json获取以下pycurl数据。我只需要将这些值放入python中的列表中。

OUTPUT:
[{ 'name' : 'aaa', 'contact' : '123' },{ 'name' : 'bbb', 'contact' : '345' },{ 'name' : 'ccc', 'contact' : '555' }]

我需要将name键的所有值都放到python列表中。

2 个答案:

答案 0 :(得分:5)

这不是有效的json数据。 JSON文件中不允许使用单引号。如果是这种情况,则需要先修复JSON字符串。

import json

json_data_string = "[{ 'name' : 'aaa', 'contact' : '123' },{ 'name' : 'bbb', 'contact' : '345' },{ 'name' : 'ccc', 'contact' : '555' }]"
json_data_string = json_data_string.replace("'", "\"") #provided JSON content doesn't contains single quotes as part of values.

data = json.loads(json_data_string)
names = map(lambda datum: datum['name'], data)

答案 1 :(得分:0)

jobtittles = list(map(lambda datum:datum ['jobtitle'],jsonVal))

我使用上面的代码来做一些类似的事情,jsonVal = JSON作为字符串 并且['jobtitle']是JSON字符串中的键,jobtitles是一个数组。

它通过将list()函数与map()函数包装在一起。