json
序列化 json pickle
pickle 只有python能够识别
json 能被所有语言识别
dumps与loads
# dumps:用来序列化一个对象
# dumps 可以指定一下参数
# sort_keys:根据key来排序
# indent:以2个空格缩进
# ensure_ascii: 可以序列化中文
#如何序列化 与反序列化
import json
d={'k1':'aa', 'k2':'bb', 'k3':'cc'}
#json序列化
res = json.dumps(d, sort_keys=True, indent=2, ensure_ascii=False)
print(res)
# 指定indent=2,用来格式化输出格式
# {
# "k1": "aa",
# "k2": "bb",
# "k3": "cc"
# }
#反序列化
dd = json.loads(res)
print(dd, type(dd)) #{'k1': 'aa', 'k2': 'bb', 'k3': 'cc'} <class 'dict'>
dump与load
# dump可以将对象序列化之后存入文件
#序列化
with open("data.json", "w", encoding="UTF-8") as f:
json.dump(d, f)
#反序列化
with open("data.json", 'r', encoding='utf-8') as f:
res = json.load(f)
print(res)
pickle
dumps与loads
import pickle
res = pickle.dumps(d)
print(res)
dd = pickle.loads(res)
print(dd
dump与load
with open("data.json", 'wb') as f:
pickle.dump(d,f)
with open("data.json", 'rb') as f:
res = pickle.load(f)
print(res)