尝试编写一个脚本来覆盖来自API的JSON,格式如下:
{'disk': 0, 'pid': 1234, 'cpus': 4, 'maxdisk': 80530636800, 'diskwrite': 0, 'netout': 18664223636, 'status': 'running', 'cpu': 0.0288084074674866, 'mem': 5976839531, 'name': 'foo', 'uptime': 102152, 'diskread': 0, 'tags': 'tag1;tag2', 'maxmem': 8589934592, 'netin': 2945853297, 'vmid': 111}
我希望访问的特定键是“tags”键。所有其他键都可以通过这个Python循环访问:
for i in range(len(json['data'])):
currentVM = json['data'][i]
print (currentVM['cpu'])
上面的JSON示例是currentVM
在一个索引处的输出。然而,如果我在这个例子中用'tags'替换'cpu',我会得到以下错误:
print (currentVM['tags'])
~~~~~~~~~^^^^^^^^
KeyError: 'tags'
他们的钥匙显然在那里,所有其他的钥匙似乎工作正常。想知道这个键是一个列表是否会改变它的行为?
创建“currentVM”变量的脚本的当前版本是我认为可能是太多的索引深度的问题,但这并不是这样,因为我仍然得到相同的错误。
1条答案
按热度按时间6ju8rftf1#
每个元素中不能有
tags
键。使用.get()
,以便提供默认值。