将新的计算值插入到 Json 中

我有一个JSON看起来像:


[{

    "lat": 43.96063343238712,

    "panoid": "sffcNG69c2kdZwEuYp1htw",

    "lon": 3.098330084924494

}, {

    "lat": 43.96052745649745,

    "panoid": "2rJPv_r0gC5FBPLZK5vHDA",

    "lon": 3.098487422195691

} and so on... ]

我想为每个元素(表示成对的括号)添加一个calc等于


(value of "lat") - 50

我该怎么做才能更新我的JSON名字?我想我应该将转换JSON为dictionary。但是之后如何进行呢?


开满天机
浏览 115回答 1
1回答

料青山看我应如是

使用json模块将字符串加载到列表中。遍历列表中的字典并设置一个属性 -calc为lat值减去50。最后,如果需要,将列表转储到带有可选indentarg的字符串中,以进行漂亮的打印。import jsons = '''[{    "lat": 43.96063343238712,    "panoid": "sffcNG69c2kdZwEuYp1htw",    "lon": 3.098330084924494}, {    "lat": 43.96052745649745,    "panoid": "2rJPv_r0gC5FBPLZK5vHDA",    "lon": 3.098487422195691}]'''l = json.loads(s)for d in l:    d['calc'] = d['lat'] - 50print(json.dumps(l, indent=4))给予:[    {        "lat": 43.96063343238712,        "panoid": "sffcNG69c2kdZwEuYp1htw",        "lon": 3.098330084924494,        "calc": -6.0393665676128805    },    {        "lat": 43.96052745649745,        "panoid": "2rJPv_r0gC5FBPLZK5vHDA",        "lon": 3.098487422195691,        "calc": -6.039472543502548    }]
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java