1

Pythonコードを使用してjsonファイルの特定のフィールドを編集/変更するにはどうすればよいですか?

{
   "EZMessage":{
      "action":"account.cash",
      "data":{
         "authToken":"123456",
         "account":"#ACCOUNTID#",
         "portfolio":"true",
         "historical":"true"
      }
   }
}

このjsonコードでは、123456を789123に置き換えたいと思います

文字列置換は、そこに何が書かれているかを知っている場合にのみ機能します。私のコードでは、何を書くべきか、そして識別子「authToken」しか知りません。「authToken」の値であることを識別して123456を上書きする方法はありますか?

ありがとう、

RS

4

2 に答える 2

3

jsonモジュールを使用して、文字列をネストされたdictオブジェクトのセットに変換し、変更を加えてから、辞書をjson文字列にダンプします。

import json
jstr = '''{
   "EZMessage":{
      "action":"account.cash",
      "data":{
         "authToken":"123456",
         "account":"#ACCOUNTID#",
         "portfolio":"true",
         "historical":"true"
      }
   }
}'''

j = json.loads(jstr)
j['EZMessage']['data']['authToken'] = 654321
jstr = json.dumps(j)

ファイルの読み取り/書き込み方法については、すばらしいチュートリアルを参照してください。

于 2013-01-30T01:59:43.167 に答える
2

JSONオブジェクトをPythonオブジェクトに変換してから、他のPythonオブジェクトと同じように値を変更します。

于 2013-01-30T01:57:41.840 に答える