如何在json文件中动态更改属性值?
有没有办法从json中的某个属性中获取一个值,并对其进行修改,然后将其分配给同一json文件中的某个其他属性 我试过了如何在json文件中动态更改属性值?,json,python-3.x,Json,Python 3.x,有没有办法从json中的某个属性中获取一个值,并对其进行修改,然后将其分配给同一json文件中的某个其他属性 我试过了 {"total":5, "ospf": { "start":1, "stop":5 }, "isis": { "start":${total}, ==> expecting 5 "stop":${total}+10 ==> expecting 15 }
{"total":5,
"ospf":
{
"start":1,
"stop":5
},
"isis":
{
"start":${total}, ==> expecting 5
"stop":${total}+10 ==> expecting 15
}
}
像这样的
'value' : {
'x' = 10
}
'calculate' : {
'total' = Value[x]*2
}
data = json.load(fileobj)
expected : data['calculate']['total] => 20 ##x*2
JSON只是一种交换格式。一旦解析成Python,它只是一堆字典和列表。只需再次加载、更新和转储。在
JSON.load()
之前的整个类似JSON的转储应该意味着什么?它肯定不是有效的JSON数据。JSON不支持任何动态数据描述。我提到的只是示例,确切的是我有一些属性,如x=5,我想根据需要通过递增来使用JSON文件。所以,JSON不支持动态数据描述?JSON只是一种交换格式。一旦解析成Python,它只是一堆字典和列表。只需再次加载、更新和转储。在JSON.load()
之前的整个类似JSON的转储应该意味着什么?它肯定不是有效的JSON数据。JSON不支持任何动态数据描述。我提到的只是示例,确切的是我有一些属性,如x=5,我想根据需要通过递增来使用JSON文件。那么,JSON不支持动态数据描述吗?我希望在JSON内动态更改值,而不在JSON外处理。我希望在JSON内动态更改值,而不在JSON外处理
import json
in_json = '{"x": 10}'
data = json.loads(in_json)
data['calculate'] = {'total': data['x']*2}
out_json = json.dumps(data)