1. 程式人生 > >pytho中pickle、json模組

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/