写入 JSON 字段及其键
Write JSON field with its key
我有 JSON 变量 var
,其内容如下:
[{"name":"name0", "surname":"surname01", "surname2":"surname02", "number": 0}, {"name":"name1", "surname":"surname11", "surname2":"surname12", "number": 1}]
我想在 JSON 文件中只写 name
和 number
字段。
目前,我正在通过以下方式进行:
f.write('[')
for a, i in enumerate(var):
f.write('{"name":' + i['name'] + ', "number":' + i['number'] + '}')
if(a==0):
f.write(',')
f.write(']')
f.close()
是否有更好的方法将 Python 中 JSON 字段的子集写入文件?
您可以使用 json
模块并将其转换为所有列表
import json
newVar = []
for i in var:
newVar.append({'name': i['name'], 'number': i['number']})
return json.dumps(newVar)
然而这并没有好多少,只是不同
您可以使用 list comprehension and the json
模块来缩短它;
import json
json.dump([{'name': i['name'], 'number': i['number']} for i in var ], f)
我有 JSON 变量 var
,其内容如下:
[{"name":"name0", "surname":"surname01", "surname2":"surname02", "number": 0}, {"name":"name1", "surname":"surname11", "surname2":"surname12", "number": 1}]
我想在 JSON 文件中只写 name
和 number
字段。
目前,我正在通过以下方式进行:
f.write('[')
for a, i in enumerate(var):
f.write('{"name":' + i['name'] + ', "number":' + i['number'] + '}')
if(a==0):
f.write(',')
f.write(']')
f.close()
是否有更好的方法将 Python 中 JSON 字段的子集写入文件?
您可以使用 json
模块并将其转换为所有列表
import json
newVar = []
for i in var:
newVar.append({'name': i['name'], 'number': i['number']})
return json.dumps(newVar)
然而这并没有好多少,只是不同
您可以使用 list comprehension and the json
模块来缩短它;
import json
json.dump([{'name': i['name'], 'number': i['number']} for i in var ], f)