如何使用 python2 从剩余输出中访问字段值?

How to access the field value from rest output using python2?

这是我的结构:

[
            {
                "name": "ga0",
                "fullName": "gac0",
                "key": "office"
                "id" : "Apps/tex3435",
                "value" : "test2"
            },
            {
                "name": "gasec1",
                "fullName": "gasec1",
                "key": "PRINCIPAL"
                "id" : "Apps/tex3433",
                "value" : "test"
            }
]

我想获取键的id PRINCIPAL

此解决方案 returns l 中条目的列表 r 其中有 key = PRINCIPAL.

l = [
            {
                "name": "ga0",
                "fullName": "gac0",
                "key": "office",
                "id" : "Apps/tex3435",
                "value" : "test2"
            },
            {
                "name": "gasec1",
                "fullName": "gasec1",
                "key": "PRINCIPAL",
                "id" : "Apps/tex3433",
                "value" : "test"
            }
]

r = filter(lambda k: k['key']=="PRINCIPAL", l)
print(r[0]['id'])

获取值键的简单循环 > "PRINCIPAL":

d = [
{
"name": "ga0",
"fullName": "gac0",
"key": "office",
"id" : "Apps/tex3435",
"value" : "test2"
},   
{
"name": "gasec1",
"fullName": "gasec1",
"key": "PRINCIPAL",
"id" : "Apps/tex3433",
"value" : "test"
}]

for x in d:

    # x is a dictionary, so we now iterate over its key - value pair
    # Use x.iteritems() for Python 2

    for key, values in x.items():
        if values == 'PRINCIPAL':
            print(key)

# Using list comprehension
print([i for x in d for i, j in zip(x.keys(), x.values()) if j == 'PRINCIPAL'])