Python访问嵌套字典值
我将JSON转换为字典,然后直接访问值。以下是JSON:Python访问嵌套字典值,python,dictionary,Python,Dictionary,我将JSON转换为字典,然后直接访问值。以下是JSON: { "timestamp": { "format": "%Y-%m-%d %H:%M:%S" }, "status": { "grok_pattern": " status=%{NUMBER:status:int}" }, "SQLite3_memory_bytes": { "table": "stats_memory_metrics", "saved_name": "sqlite3_m
{
"timestamp": {
"format": "%Y-%m-%d %H:%M:%S"
},
"status": {
"grok_pattern": " status=%{NUMBER:status:int}"
},
"SQLite3_memory_bytes": {
"table": "stats_memory_metrics",
"saved_name": "sqlite3_memory_bytes"
},
"jemalloc_resident": {
"table": "stats_memory_metrics"
}
}
我可以访问单个嵌套字典,但当我尝试访问具有多个键的嵌套字典时,会出现错误:
with open('/tmp/metrics.json') as json_file:
patterns = json.load(json_file)
print(patterns['jemalloc_resident']['table'])
print(patterns['timestamp']['format'])
print(patterns['SQLite3_memory_bytes']['saved_named'])
>> stats_memory_metrics
>> %Y-%m-%d %H:%M:%S
>> Traceback (most recent call last):
>> File "test.py", line 12, in <module>
print(patterns['SQLite3_memory_bytes']['saved_named'])
KeyError: 'saved_named'
打开('/tmp/metrics.json')作为json_文件的:
patterns=json.load(json_文件)
打印(图案['jemalloc_resident']['table'])
打印(模式['timestamp']['format'])
打印(模式['SQLite3\u内存\u字节]['saved\u named'])
>>统计数据\内存\度量
>>%Y-%m-%d%H:%m:%S
>>回溯(最近一次呼叫最后一次):
>>文件“test.py”,第12行,在
打印(模式['SQLite3\u内存\u字节]['saved\u named'])
KeyError:“已保存\u名”
如何访问已保存的\u命名键的值?您输入了一个错误。您将
saved\u named
替换为saved\u name
不用担心!这发生在我们最好的人身上