Python 3 读写 json 文件
使用函数 json.dumps()、loads() 、json.dump()、json.load() 。
1 json.dumps() 将python对象编码成Json字符串
import json
data = {
'name':'Alice',
'age':25,
'gender':'F',
'city':'北京'
}
# 1 json.dumps() 将python对象编码成Json字符串
print(type(data))
json_str = json.dumps(data)
print(type(json_str), json_str)
# ensure_ascii=True:默认输出ASCLL码,如果把这个该成False,就可以输出中文。
json_str = json.dumps(data, ensure_ascii=False)
print(type(json_str), json_str)
'''
<class 'dict'>
<class 'str'> {"name": "Alice", "age": 25, "gender": "F", "city": "\u5317\u4eac"}
<class 'str'> {"name": "Alice", "age": 25, "gender": "F", "city": "北京"}
'''
2 json.loads() 将Json字符串解码成python对象
import json
# 2 json.loads() 将Json字符串解码成python对象
json_str = '{"name": "Alice", "age": 25, "gender": "F", "city": "北京"}'
data = json.loads(json_str)
print(type(data), data)
'''
<class 'dict'> {'name': 'Alice', 'age': 25, 'gender': 'F', 'city': '北京'}
'''
3 json.dump() 将python中的对象转化成json储存到文件中
import json
data = {
'name':'Alice',
'age':25,
'gender':'F',
'city':'北京'
}
# 3 json.dump() 将python中的对象转化成json储存到文件中
with open('example.json', 'w', encoding='utf-8') as f:
json.dump(data, f, ensure_ascii=False)
# example.json
'''
{"name": "Alice", "age": 25, "gender": "F", "city": "北京"}
'''
4 json.load() 将文件中的json的格式转化成python对象提取出来
import json
# example.json
'''
{"name": "Alice", "age": 25, "gender": "F", "city": "北京"}
'''
# 4 json.load() 将文件中的json的格式转化成python对象提取出来
with open('example.json', 'r', encoding='utf-8') as f:
data = json.load(f)
print(type(data), data)
'''
<class 'dict'> {'name': 'Alice', 'age': 25, 'gender': 'F', 'city': '北京'}
'''
参考:
python的JSON用法——dumps的各种参数用法(详细)_jsondump用法-CSDN博客
json.dump()与json_dumps()区别_json.dumps-CSDN博客
Python json.dumps()函数使用解析 | w3cschool笔记