将JSON对象添加到列表中

时间:2017-06-27 07:52:19

标签: python arrays json list

我有一个从Excel文件生成报告的功能。 现在,它的工作方式如下:

import json

def get_dic_from_two_lists(keys, values):
    return { keys[i] : values[i] for i in range(len(keys)) }

def report(items):
    for i in range(items):
        dict_keys = ['name', 'age']
        dict_values = ['n', 'a']
        data = get_dic_from_two_lists(dict_keys, dict_values)
        report = json.dumps(data)
        print(report)
report(5)

项目是要生成的报告数量。 它运行良好,但我需要将结果附加到列表中,并使用逗号分隔JSON对象,此外,将所有内容写入文件。有什么好方法吗? append()功能似乎没有成功。

谢谢!

1 个答案:

答案 0 :(得分:2)

您可以将所有报表对象放在列表中,然后立即将其转换为JSON:

import json

def get_dic_from_two_lists(keys, values):
    return { keys[i] : values[i] for i in range(len(keys)) }

def report(items):
    data_list = []
    for i in range(items):
        dict_keys = ['name', 'age']
        dict_values = ['n', 'a']
        data = get_dic_from_two_lists(dict_keys, dict_values)
        data_list.append(data)

    reports = json.dumps(data_list)
    print(reports)

report(5)