如何使用Python移除JSON文件中的name1等外层键并重组结构?
可以用Python实现,不过先纠正个小问题
你想要的目标结构不符合JSON规范——JSON对象(用{}包裹)里不能直接并列多个对象,正确的结构应该是数组(用[]包裹),也就是像这样:
[ { "name": "xyz", "roll": "123", "id": "A1" }, { "name": "abc", "roll": "456", "id": "A2" }, { "name": "def", "roll": "789", "id": "B1" } ]
如果是要得到这个合法的JSON结构,用Python的json模块就能轻松实现,代码示例如下:
import json # 读取原始JSON文件 with open("input.json", "r", encoding="utf-8") as f: data = json.load(f) # 提取所有外层键对应的值,得到一个列表 result = list(data.values()) # 将结果写入新的JSON文件 with open("output.json", "w", encoding="utf-8") as f: json.dump(result, f, indent=4, ensure_ascii=False)
代码说明:
json.load(f):把文件里的JSON内容加载成Python字典list(data.values()):提取字典中所有的值(也就是你要保留的那些内层对象),转成列表json.dump(...):把列表转成JSON格式写入文件,indent=4用来格式化输出,ensure_ascii=False确保非ASCII字符正常显示
内容的提问来源于stack exchange,提问作者Neetesshhr
相关产品推荐
相关产品推荐

