Python如何使用json?

  参考资料:

  https://www.runoob.com/json/json-syntax.html

  https://www.cnblogs.com/XhyTechnologyShare/p/12033690.html

  https://blog.csdn.net/leviopku/article/details/103773219

  首先,一个json长什么样?可以参见参考资料一的菜鸟教程,应长得和下面很像:

{
    "name": "dabao",
    "id":123,
    "hobby": {
        "sport": "basketball",
        "book": "python study"
    }
}

  主体是不是长得和Python的字典很像!是的,当你读到python中的时候,它就是一个字典。字典的value是可以完全由用户来定,可以是int,可以是float,也可以是str或者列表。

  读取json的操作如下(注意:json是要以读取文本的方式来读的!这一点揭示了本质,json本质上就是格式化的文本文件!它常由utf-8编码,而不是二进制文件):

import json

with open('路径','r', encoding='utf8') as fp:
    json_data = json.load(fp)
    print('这是文件中的json数据:',json_data)
    print('这是读取到文件数据的数据类型:', type(json_data))

  (这里的编码也可能是GB码?)读进来的东西就是一个字典啦。

  怎么写出成json文件?

import json
a = {
    "name": "dabao",
    "id":123,
    "hobby": {
        "sport": "basketball",
        "book": "python study"
    }
}
b = json.dumps(a)
with open('new_json.json', 'w') as fp:
    fp.write(b)

  效果如下:

  首先通过json.dumps()把dict降级为字符串。再将字符串写入json文件中。就是这么简单。

  

原文地址:https://www.cnblogs.com/chester-cs/p/13931572.html