Python3之pickle模塊
用於序列化的兩個模塊
json:用於字符串和Python數據類型間進行轉換
pickle: 用於python特有的類型和python的數據類型間進行轉換
json提供四個功能:dumps,dump,loads,load
pickle提供四個功能:dumps,dump,loads,load
pickle可以存儲什么類型的數據呢?
- 所有python支持的原生類型:布爾值,整數,浮點數,復數,字符串,字節,None。
- 由任何原生類型組成的列表,元組,字典和集合。
- 函數,類,類的實例
應用:
1 # dumps功能 2 import pickle 3 data = ['aa', 'bb', 'cc'] 4 # dumps 將數據通過特殊的形式轉換為只有python語言認識的字符串 5 p_str = pickle.dumps(data) 6 print(p_str)
7 b'\x80\x03]q\x00(X\x02\x00\x00\x00aaq\x01X\x02\x00\x00\x00bbq\x02X\x02\x00\x00\x00ccq\x03e.
1 # loads功能 2 # loads 將pickle數據轉換為python的數據結構 3 mes = pickle.loads(p_str) 4 print(mes) 5 ['aa', 'bb', 'cc']
1 # dump功能 2 # dump 將數據通過特殊的形式轉換為只有python語言認識的字符串,並寫入文件 3 with open('D:/tmp.pk', 'w') as f: 4 pickle.dump(data, f)
1 # load功能 2 # load 從數據文件中讀取數據,並轉換為python的數據結構 3 with open('D:/tmp.pk', 'r') as f: 4 data = pickle.load(f)
本博客所有python版本默認為3.5.1