pytho中pickle、json模块

pickle & json 模块

  • json,用于字符串 和 python数据类型间进行转换
  • pickle,用于python特有的类型 和 python的数据类型间进行转换

json模块提供了四个功能:dumps、dump、loads、load

 

pickle模块提供了四个功能:dumps、dump、loads、load

观察下面实例:

 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)))
pickle & json

输出结果:

1 pickle_data: b'\x80\x03}q\x00(X\x03\x00\x00\x00pj1q\x01K{X\x03\x00\x00\x00pj2q\x02X\x05\x00\x00\x00helloq\x03u.' 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/

 

posted @ 2018-10-17 18:43  x_smile  阅读(250)  评论(0编辑  收藏  举报