【问题标题】:Referencing specific key value in JSON output在 JSON 输出中引用特定键值
【发布时间】:2020-02-14 21:14:41
【问题描述】:

我有一个返回大量数据的 JSON 输出,但我只关心其中的一部分。我的部分输出如下:

data = {'vulnerabilities': {'critical': 3,
                            'exploits': 1,
                            'malwareKits': 0,
                            'moderate': 9,
                            'severe': 29,
                            'total': 41}}

我只想引用'critical',这样我的输出中就会包含关键的数量。

代码尝试:

for element in data['vulnerabilities']:
    if element == ['critical']:
       print(element)

【问题讨论】:

  • 如果我有误解请见谅,但print(data['vulnerabilities']['critical']) 有什么问题?
  • @Klaycon 这行得通!不敢相信我没想到这一点。谢谢。

标签: python json for-loop


【解决方案1】:

您的代码似乎有很多问题。

for element in data['vulnerabilities']:

我看到了,您正在访问 data['vulnerabilities'],它返回一个 dict 本身。因此,当您对其进行迭代时,默认情况下,python 会迭代键。

这里

element == 'critical' 

是正确的而不是

if element == ['critical']:

这里我假设你想打印键的值,正如我上面提到的,元素是 dict 中的键之一,所以你应该像下面那样遍历它的项目。

for key, value in data['vulnerabilities'].items():
    if key == 'critical':
       print(value)

【讨论】:

  • 我很抱歉,还在努力学习这些东西。感谢您的帮助!
  • 是的,非常好。而且没有必要道歉..干杯...
猜你喜欢
  • 2021-12-14
  • 1970-01-01
  • 2016-03-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-01-20
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多