Python:解析json列表

时间:2015-03-16 16:01:59

标签: python arrays json

我有一个json文件,data.json

{
    "Nitrogen": [
        0.0173,
        0,
        0,
        0,
        28.0135
    ],
    "Oxygen": [
        0.0283,
        0,
        0,
        0,
        31.9988
    ]
}

我读了这样的数据:

import json

def read_data(path):
    with open(path, 'rU') as data:
        gasses = json.load(data)
        for gas in gasses:
            yield gas


if __name__ == '__main__':
    for row in read_data('data.json'):
        print(row)

它给了我

Nitrogen
Oxygen

我如何获取列表中的值呢?

3 个答案:

答案 0 :(得分:1)

像这样:

gasses = json.load(data)
for gas, value in gasses.items():
    yield (gas, value)

答案 1 :(得分:0)

气体指向词典的键。 gasses [gas]为你提供价值。

答案 2 :(得分:0)

工作示例 - 使用Python 2.6.9 2.7.10 3.2.5 3.4.3 3.5.0

import json


def read_data(path):
    with open(path, 'rU') as data:
        gasses = json.load(data)
        for gas, values in gasses.items():
            yield gas
            for value in values:
                yield value


if __name__ == '__main__':
    for row in read_data('data.json'):
        print(row)

<强>输出

Nitrogen
0.0173
0
0
0
28.0135
Oxygen
0.0283
0
0
0
31.9988