Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 编辑JSON文件,同时保持格式正确(例如缩进)_Python_Json_Matlab - Fatal编程技术网

Python 编辑JSON文件,同时保持格式正确(例如缩进)

Python 编辑JSON文件,同时保持格式正确(例如缩进),python,json,matlab,Python,Json,Matlab,我有一个JSON文件,格式如下,我想要一个方法来轻松编辑两个数据集中的数据 通过在.txt或.xls文件中插入表(每个表有2列),如何轻松替换这两个数据表[x,x] 我曾尝试在MATLAB中使用jsondecode和JSONECODE函数来实现这一点,但当我重写到.json文件时,所有标识和行更改都丢失了。如何(以及使用哪种软件)使其保持正确的格式 { “化合物”: [“frutafresca”], “财产1”: { “方案”:“Test1”, “标准值”:0.01, “数据”: [ [

我有一个JSON文件,格式如下,我想要一个方法来轻松编辑两个数据集中的数据

通过在.txt或.xls文件中插入表(每个表有2列),如何轻松替换这两个数据表[x,x]

我曾尝试在MATLAB中使用jsondecode和JSONECODE函数来实现这一点,但当我重写到.json文件时,所有标识和行更改都丢失了。如何(以及使用哪种软件)使其保持正确的格式

{
“化合物”:
[“frutafresca”],
“财产1”:
{
“方案”:“Test1”,
“标准值”:0.01,
“数据”:
[
[     353.15  ,   108320   ],
[   503.15  ,   5120000  ],
[   513.15  ,   6071400  ]
]
},
“财产2”:
{
“方案”:“测试1”,
“标准值”:0.01,
“数据”:
[
[     273.15  ,   806.25 ],
[   283.15  ,   797.92 ],
[   293.15  ,   789.39 ],
[   453.15  ,   598.39 ],
[   463.15  ,   578.21 ],
[   473.15  ,   556.79 ]
]
}
}

是否有理由不使用标准lib
json
模块

json
模块 从:

json.dump(obj,fp,*,skipkeys=False,确保ascii=True,check=True,allow=True,cls=None,indent=None,separators=None,default=None,sort=key=False,**kw)

如果缩进是一个非负整数或字符串,那么JSON数组 元素和对象成员将使用该缩进进行漂亮的打印 水平。缩进级别为0、负数或“”将仅插入 新行。无(默认值)选择最紧凑的表示形式。 使用正整数缩进时,每个级别缩进的空格数为多少。如果 缩进是一个字符串(如“\t”),该字符串用于缩进每个字符串 水平

导入json
数据=无
使用open('data.json','r')作为_文件:
data=json.load(_文件)
断言数据不是无
##您对数据的更改是否记录
打开('data.json','w')作为_文件:
dump(数据,_文件,缩进=2)##缩进输出,每级2个空格

是否有理由不使用标准lib
json
模块

json
模块 从:

json.dump(obj,fp,*,skipkeys=False,确保ascii=True,check=True,allow=True,cls=None,indent=None,separators=None,default=None,sort=key=False,**kw)

如果缩进是一个非负整数或字符串,那么JSON数组 元素和对象成员将使用该缩进进行漂亮的打印 水平。缩进级别为0、负数或“”将仅插入 新行。无(默认值)选择最紧凑的表示形式。 使用正整数缩进时,每个级别缩进的空格数为多少。如果 缩进是一个字符串(如“\t”),该字符串用于缩进每个字符串 水平

导入json
数据=无
使用open('data.json','r')作为_文件:
data=json.load(_文件)
断言数据不是无
##您对数据的更改是否记录
打开('data.json','w')作为_文件:
dump(数据,_文件,缩进=2)##缩进输出,每级2个空格

为什么需要保留格式?因为这样我会将文件存储起来存档,而且比所有文件都在同一行更容易阅读。但为什么所有文件都在同一行?你不想保留格式,你只想要可读的输出,不是吗?是的,但是我提到的MATLAB函数没有保留行的变化,所有内容都写在同一行上。是的,但是我提到的MATLAB函数没有保留行的变化,所有内容都写在同一行上。啊,不幸的是,我对MATLAB了解不多,所以我无法提供帮助…为什么需要保留格式?因为这样我会存储文件以存档,而且它们比所有内容都在同一行更容易阅读。但是为什么所有内容都在同一行?你不想保留格式,你只想要可读的输出,不是吗?是的,但是我提到的MATLAB函数没有保留行的变化,所有内容都写在同一行上。是的,但是我提到的MATLAB函数没有保留行的变化,所有内容都写在同一行上。啊,不幸的是,我对MATLAB了解不多,所以我不能帮上忙…我提到MATLAB的唯一原因是因为它是我最了解的。但由于我对学习python感兴趣,我将尝试一下!非常感谢。我提到MATLAB的唯一原因是因为它是我最了解的。但由于我对学习python感兴趣,我将尝试一下!非常感谢。