JSON (JavaScript Object Notation) 是一种轻量级的数据交换格式。Python3 中可以使用 json 模块来对 JSON 数据进行编解码.
Python 编码为 JSON 类型转换对应表:

我们通过代码来看下如何实现对json的解析操作呢...
- import json
- data = {
- 'name': 'gebilaowang',
- 'age': 26,
- 'sex': 'female',
- 'work': 'mairou',
- 'address': {'province': 'Fujian', 'city': 'xiamen'}
- }
[color=rgb(15, 199, 122) !important]复制代码
如果我们想要将data这个字典类型转换为JSON对象,代码可以这样写:
- jsonStr = json.dumps(data)
- print(jsonStr)
[color=rgb(15, 199, 122) !important]复制代码
最终执行结果是:
- {"name": "gebilaowang", "age": 26, "sex": "female", "work": "mairou", "address": {"province": "Fujian", "city": "xiamen"}}
[color=rgb(15, 199, 122) !important]复制代码
如果我们要将JSON对象类型转换为Python的字典类型,代码如下:
- testDict = json.loads(jsonStr)
- print(testDict['address'])
[color=rgb(15, 199, 122) !important]复制代码
最终执行结果是:
- {'province': 'Fujian', 'city': 'xiamen'}
[color=rgb(15, 199, 122) !important]复制代码
那么如何将Python字典直接输出到一个json文件呢?
- with open('test.json', 'w', encoding='utf-8') as f:
- json.dump(testDict, f, ensure_ascii=False, indent=4)
[color=rgb(15, 199, 122) !important]复制代码
将json文件对象中的JSON字符串直接转换成Python字典代码如下:
- with open('test.json', 'r', encoding='utf-8') as f:
- retDict = json.load(f)
- print(type(retDict))
- print(retDict['name'])
[color=rgb(15, 199, 122) !important]复制代码
[color=rgb(15, 199, 122) !important]
|
|