在python中从json获取密钥

Sag*_*gar 4 json python-2.7

我有一个 API,它的响应是这样的 json:

{
"a":1,
"b":2,
"c":[
     {
     "d":4,
     "e":5,
     "f":{
         "g":6
         }
     }
    ]
}
Run Code Online (Sandbox Code Playgroud)

我怎样才能编写一个 python 程序,它会给我钥匙['d','e','g']。我试过的是:

jsonData = request.json() #request is having all the response which i got from api
c = jsonData['c']
for i in c.keys():
    key = key + str(i)
print(key)
Run Code Online (Sandbox Code Playgroud)

And*_*yko 5

仅返回不包含字典作为其值的键的函数。

jsonData = {
    "a": 1,
    "b": 2,
    "c": [{
        "d": 4,
        "e": 5,
        "f": {
            "g": 6
        }
    }]
}


def get_simple_keys(data):
    result = []
    for key in data.keys():
        if type(data[key]) != dict:
            result.append(key)
        else:
            result += get_simple_keys(data[key])
    return result

print get_simple_keys(jsonData['c'][0])
Run Code Online (Sandbox Code Playgroud)

为了避免使用递归更改行result += get_simple_keys(data[key])result += data[key].keys()