#!/usr/bin/env python
# -*- coding;utf-8 -*-
"""
正解(序列化):将Python数据类型转换成json或者pickle格式的字符串
json.dumps(序列化的对象) pickle.dumps(序列化的对象)
json.dump(序列化的对象, 支持可以执行写操作的类文件对象)
pickle.dump(序列化的对象, 支持可以执行写操作的类文件对象)
反解(反序列化):将json或者pickle格式的字符串转换成Python数据类型
json.loads(一个含有json特征的实例) pickle.loads(一个含有pickle特征的实例)
json.load(支持类文件对象包含Python对象的一个JSON文档)
pickle.load(支持类文件对象包含Python对象的一个pickle文档)
注意:原正解源数据必须是基本数据类型,否则报错,反解的字符串内部的引号必须是双引号,否则报错
"""
import json, pickle
a = {"k1": 1, "k2": 2}
b = json.dumps(a)
c = pickle.dumps(b)
print("b :", b)
print("c :", c)
a1 = json.loads(b)
a2 = pickle.loads(c)
print("a1:", a1)
print("a2:", a2)
"""
结果:
b : {"k1": 1, "k2": 2}
c : b'\x80\x03X\x12\x00\x00\x00{"k1": 1, "k2": 2}q\x00.'
a1: {'k1': 1, 'k2': 2}
a2: {"k1": 1, "k2": 2}
"""