如何整理我的JSON数据以减少空白并减少文件大小?

2024-06-25 23:10:37 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在写一个带有可变数据的JSON,目前它太长了,像数十万行。我想如果我能消除空白,我可以大大减少文件大小

现在我像这样写json

for num in num_list:
                datalog['build'].append({
                    'Number': num,
                    'Code' : L 
                })
                json.dump(datalog, outfile, indent=4, sort_keys=False, ensure_ascii=False, separators=(',', ':'))

我如何编辑上面的json.dump从这里开始

{
    "build":[
        {
            "Num":"XXXXXXXXXXXXXXXXX",
            "Code":[
                {
                    "text":"0515: xxx"
                },
                {
                    "text":""
                },
                {
                    "text":""
                },
                {
                    "text":""
                },

对此

{
    "build":[
        {
            "Num":"XXXXXXXXXXXXXXXXX",
            "Code":[{"text":"0515: xxx"},{"text":""},{"text":""},{"text":""},

Tags: 数据textbuildjsonfalseforcodedump
2条回答

因为“Code”是一个只有一个条目的dict列表,所以它可以简化为一个字符串列表

 "Code":[{"text":"0515: xxx"},{"text":""},{"text":""},{"text":""}]

可以转换为:

 "Code":["0515: xxx","","",""]

使用pythonjson默认模块,您不能选择保留或删除哪个间隙。您可以放置indent=0,它将删除所有间隙并减小文件大小,但会使人类无法读取

如果与另一种语言的互操作性不是问题,那么可以使用picklemashall

相关问题 更多 >