更新json sting中的值

时间:2016-11-02 12:09:17

标签: python json

这是我想要更新的字符串。

Koordinatstring = 
    {
            "Koords":"Koordinates",
            "TrueCoords":
            {
                    "FirstFind":
                    {
                            "X":"134",
                            "Y":"223",
                    },
                    "SecondFind":
                    {
                            "X":"721",
                            "Y":"632",
                    },
                    "ThirdFind":
                    {
                            "X":"412",
                            "Y":"344",
                    },
                    "FourthFind":
                    {
                            "X":"612",
                            "Y":"532",
                    }
            }
    }

我知道如何从FourthFind中仅提取X或Y值。但我现在要做的是访问该值并将其替换为我想要输入的新值。

我想做一些类似的事情:

k = json.dumps(koordinatstring)
l = json.loads(k)

Kords1 = l['TrueCoords']['FirstFind']['X']

要覆盖数据,但我不知道是否可以。

1 个答案:

答案 0 :(得分:0)

即使数据可能来自JSON文档,一旦解析,您就会有普通的词典引用其他普通词典。

您始终可以分配到词典中的键:

 d = {'foo': 'bar'}
 d['foo'] = 'spam'

您只有一个嵌套字典,因此您需要将几个[...]订阅字符串组合在一起以访问您要更改的字词:

l['TrueCoords']['FourthFind']['X'] = '42'

这会将'X'键设置为'42'引用的词典中的新值l['TrueCoords']['FourthFind']