用于序列化的两个模块python
Json模块提供了四个功能:dumps、dump、loads、load
json
pickle模块提供了四个功能:dumps、dump、loads、load
code
import pickle data = dict(k1=123, k2='hello') # pickle.dumps 将数据经过特殊的形式转换为只有python语言认识的字符串 p_str = pickle.dumps(data) print(p_str) # pickle.loads 将pickle字符串转换为原数据类型的数据 d = pickle.loads(p_str) for k in d: print ("%s ---> %s" % (k,d[k])) # pickle.dump 将数据经过特殊的形式转换为只有python语言认识的字符串,并写入文件 with open('result.pk','wb') as fp: pickle.dump(data,fp) with open('result.pk','rb') as fp: d = pickle.load(fp) print(type(d)) # <class 'dict'> import json j_str = json.dumps(data) print(j_str) print(type(j_str)) # <class 'str'> d = json.loads(j_str) print(type(d)) # <class 'dict'>