JSON对象解析:循环遍历动态数据

时间:2015-05-14 06:30:10

标签: python json

我有一个JSON对象如下:

{u'2015-05-11': 2, u'2015-05-04': 1}

这里的日期可能会有所不同,即我可以查询多个日期。

我想提取对象中的数字并添加它们。因此,在此示例中,我想提取21并将它们提取出来以获得结果3

另一个例子:

{u'2015-05-11': 6, u'2015-05-04': 0}

答案为6 + 0 = 6

具有多个日期的JSON对象的另一个示例:

{u'2015-04-27': 0, u'2015-05-11': 2, u'2015-05-04': 1}

答案如下:0 + 2 + 1 = 3

我想遍历JSON对象并提取所有数字。我已经阅读了herehere提供的答案。问题是,我所拥有的JSON对象没有我可以查询的固定密钥。

我该如何解决这个问题?

3 个答案:

答案 0 :(得分:4)

这些都是Python dicts,而不是JSON对象。

由于您似乎根本不关心密钥,因此您可以获取值并将它们相加:

result = sum(data.values())

答案 1 :(得分:0)

如果您确定它是json数据,则数据如下所示:

'{"2015-05-11": 2, "2015-05-04": 1}'

将json转换为dict:

data = json.loads(a)
# {u'2015-05-11': 2, u'2015-05-04': 1}

根据你的问题,解决问题。

result = sum(data.values())
# 3

答案 2 :(得分:-2)

Daniel的回答为您提供了您正在寻找的解决方案,但您也应该知道可以使用枚举迭代Python dict。

for value, key in enumerate(your_dict):
    print value, key