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’}
‘’’