常用模块——pickle模块

Posted msj513

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了常用模块——pickle模块相关的知识,希望对你有一定的参考价值。

import pickle
name = msj
age = 25
height= 184
user = {name:name,age:age,height:height}#内存中数据

 

pickle模块

pickle模块是一个用来序列化的模块。

什么是序列化?

指的是将内存中的数据结构转为一种中间格式,并存储在硬盘上。

什么是反序列化?

将硬盘上存储的中间格式文件还原成内存中的数据结构。

为什么要序列化?

就是为了将数据永久存储,之前学过文件也能完成永久存储,但是操作起来十分复杂。

pickle模块是Python专用的序列化模块,所以并不能与其他语言的软件交互。

pickle模块的主要功能

dump dumps序列化

import pickle
name = msj
age = 25
height= 184
user = {name:name,age:age,height:height}#内存中的数据

 dumps序列化

with open(ruserdb.pkl,wb) as f:
    res = pickle.dumps(user)#序列化内存中的信息
    f.write(res)#写入文件

 dump序列化(将文件写入功能集成了)

with open(ruserdb.pkl,wb) as f:
    pickle.dump(user,f)

 loads反序列化

with open(ruserdb.pkl,rb) as f:
    fread = f.read()#读取文件内容
    res =pickle.loads(fread)#反序列化
    print(res)

 

load序列化(将文件读取操作集成了) 

with open(ruserdb.pkl,rb) as f:
    res =pickle.load(f)
    print(res)

 序列化存储的文件通常只存储一个对象。

 



以上是关于常用模块——pickle模块的主要内容,如果未能解决你的问题,请参考以下文章

常用模块——pickle模块

常用文件操作模块json,pickle和shelve

python学习第七天--文件系统常用模块os,os.path,pickle

Python常用模块——json,pickle模块

常用模块2

Python函数和常用模块day06:json & pickle-hashlib模块