Python 获取JSON数据的特定值

Python 获取JSON数据的特定值,python,json,Python,Json,我使用以下代码从RESTCONF HTTPS请求中获取JSON数据 https_request = 'https://' + host + '/restconf/data/' + operation headers = {'Content-type': 'application/yang-data+json', 'Accept': 'application/yang-data+json'} r = requests.get(https_request, auth=(user, password)

我使用以下代码从RESTCONF HTTPS请求中获取JSON数据

https_request = 'https://' + host + '/restconf/data/' + operation
headers = {'Content-type': 'application/yang-data+json', 'Accept': 'application/yang-data+json'}
r = requests.get(https_request, auth=(user, password), headers=headers, verify=False)
print r.json()
我得到的数据是:

{
    "Cisco-IOS-XE-native:Tunnel": {
        "name": 0,
        "bandwidth": {
            "kilobits": 256
        },
        "ip": {
            "address": {
                "primary": {
                    "address": "10.10.1.1",
                    "mask": "255.255.255.252"
                }
            }
        },
        "load-interval": 30,
        "Cisco-IOS-XE-tunnel:tunnel": {
            "source": "GigabitEthernet1",
            "destination": {
                "ipaddress-or-host": "10.2.1.3"
            }
        }
    }
}
基本上,我希望函数返回字段的
“带宽”
值,即
256
。我尝试了以下方法,但没有成功

capacity = r.json()['Cisco-IOS-XE-native:Tunnel']['bandwidth']
试试这个:

j={
    "Cisco-IOS-XE-native:Tunnel": {
        "name": 0,
        "bandwidth": {
            "kilobits": 256
        },
        "ip": {
            "address": {
                "primary": {
                    "address": "10.10.1.1",
                    "mask": "255.255.255.252"
                }
            }
        },
        "load-interval": 30,
        "Cisco-IOS-XE-tunnel:tunnel": {
            "source": "GigabitEthernet1",
            "destination": {
                "ipaddress-or-host": "10.2.1.3"
            }
        }
    }
}
print(j['Cisco-IOS-XE-native:Tunnel']['bandwidth'])
这将返回:

{'kilobits': 256}
对于256:

print(j['Cisco-IOS-XE-native:Tunnel']['bandwidth']['kilobits'])

r.json()['Cisco-IOS-XE-native:Tunnel']['bandwidth']['kilobits']
?当你说“它没有工作”时,你能更具体一点吗?例如,描述您的期望以及它抛出的异常将更有帮助。在您的情况下,您没有检索到确切的所需密钥。@knh190我忘记添加
['kilobits']
值。有了你的回答,它成功了!谢谢!