如何使用Python在JSON中编写大量嵌套记录
我想生成一个JSON文件,包含一些初始参数,然后记录如下数据:如何使用Python在JSON中编写大量嵌套记录,python,json,records,Python,Json,Records,我想生成一个JSON文件,包含一些初始参数,然后记录如下数据: { "measurement" : 15000, "imi" : 0.5, "times" : 30, "recalibrate" : false, { "colorlist" : [234, 431, 134] "speclist" : [0.34, 0.42, 0.45, 0.34, 0.78] } { "colorlist" : [214, 451, 114] "speclist" : [0.44
{
"measurement" : 15000,
"imi" : 0.5,
"times" : 30,
"recalibrate" : false,
{
"colorlist" : [234, 431, 134]
"speclist" : [0.34, 0.42, 0.45, 0.34, 0.78]
}
{
"colorlist" : [214, 451, 114]
"speclist" : [0.44, 0.32, 0.45, 0.37, 0.53]
}
...
}
如何使用Python json模块实现这一点?数据记录太多,无法手动添加
编辑:在@Aprillion的帮助下解决。以下是程序中的结果代码:
data=[]
i=0
while i<measurement:
data.append({"colorlist" : listcolorlist[i], "speclist" : listspeclist[i]})
i+=1
python_data = {
"measurement" : measurement,
"imi" : imi,
"times" : times,
"recalibrate" : recalibrate,
"data": data
}
print(json.dumps(python_data, indent=4))
data=[]
i=0
而我a)您在问题中使用了无效的json格式
b) exeptFalse
vs.False
python数据格式与本例中的JSON完全相同
更新:基于更新问题的代码(使用代替while循环):
阅读json模块文档。@OP:除了向我们展示您的尝试之外,请具体询问。你到底想要什么?我觉得你的json示例源代码很奇怪。你确定那些等号和嵌套的、看起来有点像dict的东西在里面吗?它们应该是周围的值还是键?我试过在字典中使用字典,但这不起作用,因为我需要如图所示将colorlist和speclist值绑定在一起。@jamesmcm dictionary需要key:value
对,有关正确的数据格式,请参阅我的答案谢谢,这解决了格式问题,现在我只需要写一个for循环来重复从python列表中提取数组。如果您需要帮助,请更新问题或发布一个新的问题来包含您的原始数据,我没有您知道的算命水晶球(否则,如果您发现了您要的内容,请接受答案)是的,对不起,我工作很忙。如果其他人也有类似的问题,这就是确切的结果代码:data=[]i=0,而ii也更新了我的答案,以防任何人发现列表理解比while循环更优雅(可能还节省内存和极少数处理器周期)
import json
print json.dumps([ {
"measurement%d" % i : 15000,
"imi%d" % i : 0.5,
"times%d" % i : 30,
"recalibrate%d" % i : False,
} for i in range(10) ])
import json
measurement = 2
listcolorlist = [[234, 431, 134],
[214, 451, 114]]
listspeclist = [[0.34, 0.42, 0.45, 0.34, 0.78],
[0.44, 0.32, 0.45, 0.37, 0.53]]
python_data = {"measurement" : 15000,
"imi" : 0.5,
"times" : 30,
"recalibrate" : False,
"data" : [{"colorlist" : listcolorlist[i],
"speclist" : listspeclist[i]}
for i in range(measurement)]}
print(json.dumps(python_data))