如何将Python中生成的JSON对象转换为JSON数组?
解决JSON对象转JSON数组的问题
嗨,这事儿超简单~你现在生成的是单个JSON对象,要转成数组格式,只需要把你的字典包裹进一个列表就行啦,这样序列化后就会变成[{...}]的结构。
修改后的代码
import simplejson d2 = { "CHARACTER": { "IDENTITY": { "FORM": { "id": "BK1", "type": "MAGE", "role": "DARK" } }, "USER": { "owner": { "id": "SABBATH13" }, "level": "16" } } } # 把单个字典包装成列表,得到数组结构 d2_as_array = [d2] # 推荐用with语句处理文件,自动关闭更省心 with open('d2.json', 'w') as jsonfile: simplejson.dump(d2_as_array, jsonfile, indent=4)
关键说明
- 原来的
d2是一个单独的字典,序列化后对应JSON对象({...});把它放进列表[d2]后,序列化就会变成JSON数组([{...}]),完全符合你要的格式。 - 使用
with语句操作文件是Python的最佳实践,不用手动调用close(),能避免忘记关闭文件导致的问题。
内容的提问来源于stack exchange,提问作者Walter U.
相关产品推荐
相关产品推荐

