JSON支持的数据格式
- 对象(字典)。使用花括号
- 数组(列表)。使用方括号
- 整型、浮点型、布尔类型和null类型
- 字符串类型(字符串必须使用双引号,不能使用单引号)
- 非基本数据类型(如类)不能转换为JSON
ps:
- 多个数据之间用逗号隔开
- JSON本质上是一个字符串
- 使用www.json.cn测试学习json
可以转换为json的类型
- int
- float
- str
- list
- dict
- tuple
导入包
import json
将Python对象转换为json字符串
json_str = json.dumps(persons)
, 自动将单引号更改为双引号
if __name__ == '__main__':
import json
persons = [
{
'name': 'Lance',
'age': 18,
'height': 170,
},
{
'name': 'Alice',
'age': 20,
'height': 180,
},
]
json_str = json.dumps(persons, ensure_ascii=False)
print(type(json_str))
print(json_str)
将json数据存储到文件
json.dumps(persons, fp)
if __name__ == '__main__':
import json
persons = [
{
'name': 'Lance',
'age': 18,
'height': 170,
},
{
'name': 'Alice',
'age': 20,
'height': 180,
},
]
with open('persons.json', 'w', encoding='utf-8') as fp:
json.dumps(persons, fp, ensure_ascii=False)
```
## 将json转换为 Python对象
```Python
json_str = ...
persons = json.loads(json_str)
with open('person.json', 'r', encoding='utf-8') as fp:
persons = json.load(fp)