一、 序列化:
1.1 json方法:
1.1.1 总结:
| json.load() | 参数文件句柄(r) | 将文件中字符串转换成字典 |
| json.dump() | 对象(字典) | 文件句柄(w) 将字典转换字符串写入到文件中 |
| json.dumps() | 对象(字典) | 将字典转换成字符串 |
| json.loads() | 字符串(字典) | 将字符串转换成字典 |
1.1.2 json的操作方法:
import json # 注意,json转换完的字符串类型的字典中的字符串是由""表示的 d = {'user': 'abc', 'pwd': 123} # 将字典转换成字符串(序列化) s = json.dumps(d) print(s) # 注意,要用json的loads功能处理的字符串类型的字典中的字符串必须由""表示 s = '{"user": "abc", "pwd": 123}' # 将字符串转换成字典(反序列化) d = json.loads(s) print(d) # dump方法接收一个文件句柄,直接将字典转换成json字符串写入文件 d = {'user': 'abc', 'pwd': 123} # 将字典转换成字符串,存入文件中 json.dump(d, open('register.txt', encoding='utf-8', mode='w')) # load方法接收一个文件句柄,直接将文件中的json字符串转换成数据结构返回 d = json.load(open('register.txt', encoding='utf-8', mode='r')) # 将文件读出转换成字典 print(d) # json格式化输出: data = {'username': ['李华', '二愣子'], 'sex': 'male', 'age': 16} json_dic2 = json.dumps(data, sort_keys=True, indent=2, separators=(',', ':'), ensure_ascii=False) # ensure_ascii=False中文显示 print(json_dic2)