1

我就是这种情况。我有 2 个列表和两个整数,我需要将它们全部放入一个 JSON 文件中,以便我可以将它传递给另一个 Python 程序。我希望最终的文件/结构类似于:

 File:{
        numbers : [1,2,3]
        strings : ["a", "b" , "c"]
        x : 0
        y : 0
    }

有没有办法以自动化的方式做到这一点,而无需明确地将其全部写成一个巨大的字符串?我假设它使用转储,但我不完全确定如何正确使用它以及它将如何合并变量标签(即数字、字符串)或如何将每一行添加到单个 JSON 结构中。

import json
n = [1, 2, 3]
s = ["a", "b" , "c"]
x = 0
y = 0
nums = json.dumps(n,)
strings = json.dumps(s)
print(nums)
4

1 回答 1

4

把所有东西都放在一个字典里:

json.dumps({'numbers': n, 'strings': s, 'x': x, 'y': y})

结果:

>>> json.dumps({'numbers': n, 'strings': s, 'x': x, 'y': y})
'{"numbers": [1, 2, 3], "y": 0, "x": 0, "strings": ["a", "b", "c"]}'

请注意,JSON 对象和 Python 字典都没有特定的顺序。

于 2013-04-16T15:11:53.193 回答