如何将多行JSON转换为无多余空格的单行JSON格式
多行JSON转单行无空格格式的解决方法
你已经完成了JSON文件加载为字典的步骤,只需要在序列化输出时调整json.dumps的参数即可实现需求:
- 核心调整
separators=(',', ':')参数:默认的序列化分隔符为,(逗号后带空格)和:(冒号后带空格),修改后就会移除所有多余的分隔空格 - 不设置
indent参数:默认无缩进,直接输出单行内容 - 如果需要将示例中
vers对应的浮点数值1.0转为整数1输出,提前对字典值做类型转换即可。
完整代码示例
import json # 加载JSON文件,用with语句自动管理文件句柄更规范 with open('test.json', 'r', encoding='utf-8') as f: data = json.load(f) # 可选处理:将整值浮点数转为整数,匹配你的预期输出格式 if data['vers'] == int(data['vers']): data['vers'] = int(data['vers']) # 生成单行无空格的JSON字符串 compact_json = json.dumps(data, separators=(',', ':')) print(compact_json)
运行后输出结果和你预期的完全一致:{"a":["b","bill","clown","circus"],"vers":1}
内容的提问来源于stack exchange,提问作者Kulwant
相关产品推荐
相关产品推荐

