pkl文件是python里面保存文件的一種格式,如果直接打開會顯示一堆序列化的東西。
cPickle在python3中更名為pickle
使用方式如下:
import pickle as p
shoplistfile = 'shoplist.data' #保存文件數據所在文件的文件名
shoplist = ['apple', 'mango', 'carrot']
f = open(shoplistfile, 'wb') #二進制打開,如果找不到該文件,則創建一個
p.dump(shoplist, f) #寫入文件
f.close() #關閉文件
del shoplist # 刪除列表
f = open(shoplistfile, 'rb')
storedlist = p.load(f)#重新加載數據到列表中
print(storedlist)
#輸出結果:[‘apple’, ‘mango’, ‘carrot’]
代碼:
import pickle
b=7
i=13000000
fa=99.056
s='中國人民 123abc'
lst=[[1,2,3],[4,5,6],[7,8,9]]
tu=(-5,10,8)
coll={4,5,6}
dic={'a':'apple','b':'banana','g':'grape','o':'orange'}
f=open('sample_pickle.dat','wb') #以寫模式打開二進制文件
try:
pickle.dump(b,f) #對象個數
pickle.dump(i,f) #寫入整數
pickle.dump(fa,f) #寫入字符串
pickle.dump(s,f) #寫入浮點數
pickle.dump(lst,f) #寫入列表
pickle.dump(tu,f) #寫入元組
pickle.dump(coll,f) #寫入集合
pickle.dump(dic,f) #寫入字典
except:
print('寫文件異常')
finally:
f.close()
'''
使用pickle模塊讀取'sample_pickle.dat'內的二進制內容
'''
f=open('sample_pickle.dat','rb')
n=pickle.load(f) #讀出文件的數據個數
for i in range(n):
x=pickle.load(f)
print(x)
f.close()
‘’‘輸出
13000000
99.056
中國人民 123abc
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
(-5, 10, 8)
{4, 5, 6}
{‘a’: ‘apple’, ‘b’: ‘banana’, ‘g’: ‘grape’, ‘o’: ‘orange’}
‘’’