pickle & json 模块
- json,用于字符串 和 python数据类型间进行转换
- pickle,用于python特有的类型 和 python的数据类型间进行转换
json模块提供了四个功能:dumps、dump、loads、load
pickle模块提供了四个功能:dumps、dump、loads、load
观察下面实例:
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 import pickle 2 3 data={'pj1':123,'pj2':"hello"} 4 5 p_dumps=pickle.dumps(data) 6 7 print('pickle_data: {} type_p_dumps:{}'.format(p_dumps,type(p_dumps))) 8 9 p_loads=pickle.loads(p_dumps) 10 print('pickle_loads: {} type_p_loads:{}'.format(p_loads,type(p_loads))) 11 12 import json 13 14 j_dumps=json.dumps(data) 15 print('json_dumps: {},type_j_dumps:{}'.format(j_dumps,type(j_dumps))) 16 17 j_loads=json.loads(j_dumps) 18 print('json_loads: {} type_j_loads:{}'.format(j_loads,type(j_loads)))
输出结果:
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 pickle_data: b'x80x03}qx00(Xx03x00x00x00pj1qx01K{Xx03x00x00x00pj2qx02Xx05x00x00x00helloqx03u.' type_p_dumps:<class 'bytes'> 2 pickle_loads: {'pj1': 123, 'pj2': 'hello'} type_p_loads:<class 'dict'> 3 json_dumps: {"pj1": 123, "pj2": "hello"},type_j_dumps:<class 'str'> 4 json_loads: {'pj1': 123, 'pj2': 'hello'} type_j_loads:<class 'dict'>
pickle 中 dumps 方法得到的结果类型为 bytes!loads 方法传入的参数类型必须是 str !
json 中 dumps 方法得到的结果类型为 str! loads 方法传入的参数类型必须是 str !
原创不易,尊重版权。转载请注明出处:http://www.cnblogs.com/xsmile/