解析json python

use*_*986 8 python json

我如何迭代以下json文件,如果fa ="cc.ee"然后在fb中添加一个值?

  {
        "pk": 1, 
        "fa": "cc.ee", 
        "fb": {
            "fc": "", 
            "fd_id": "12345", 
        }
    }, 


#!/usr/bin/env python
import json,urllib
json_data=open("my.json")
data = json.load(json_data)
for entry in data:
    json.dumps(entry)
json_data.close()
exit
Run Code Online (Sandbox Code Playgroud)

Pab*_*blo 17

JSON对象的行为类似于字典.您可以像分配字典一样分配新密钥来添加值:

json_string = """
{
    "pk": 1, 
    "fa": "cc.ee", 
    "fb": {
        "fc": "", 
        "fd_id": "12345"
    }
}"""

import json
data = json.loads(json_string)
if data["fa"] == "cc.ee":
    data["fb"]["new_key"] = "cc.ee was present!"

print json.dumps(data)
Run Code Online (Sandbox Code Playgroud)

  • 关于`json`模块的另一个问题是:对于早期版本,`simplejson`应该可用,如果`json`不是.通过`import simplejson as json`(`import json`,如果`catchError`被捕获),可以获得与旧版本的兼容性,并可能从性能提升中获益(据说`simplejson`更频繁地更新).两个模块具有相同的接口,因此它们以相同的方式使用.请参阅[此问题]中的更多内容(http://stackoverflow.com/questions/712791/json-and-simplejson-module-differences-in-python). (3认同)