千家信息网

如何使用Python3 pickle模块

发表于:2025-02-19 作者:千家信息网编辑
千家信息网最后更新 2025年02月19日,这篇文章主要讲解了"如何使用Python3 pickle模块",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"如何使用Python3 pickle模块"吧
千家信息网最后更新 2025年02月19日如何使用Python3 pickle模块

这篇文章主要讲解了"如何使用Python3 pickle模块",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"如何使用Python3 pickle模块"吧!

pickle模块特点

1、只能在python中使用,只支持python的基本数据类型。

2、可以处理复杂的序列化语法。(例如自定义的类的方法,游戏的存档等)

3、序列化的时候,只是序列化了整个序列对象,而不是内存地址。

pickle: 用于python特有的类型和python的数据类型间进行转换,pickle提供四个功能:dumps,dump,loads,load

pickle可以存储什么类型的数据呢?

所有python支持的原生类型:布尔值,整数,浮点数,复数,字符串,字节,None。

由任何原生类型组成的列表,元组,字典和集合。

函数,类,类的实例

pickle模块中常用的方法

1. pickle.dump(obj, file, protocol=None,)

必填参数obj表示将要封装的对象

必填参数file表示obj要写入的文件对象,file必须以二进制可写模式打开,即"wb"

可选参数protocol表示告知pickler使用的协议,支持的协议有0,1,2,3,默认的协议是添加在Python 3中的协议3。

2. pickle.load(file,*,fix_imports=True, encoding="ASCII", errors="strict")

必填参数file必须以二进制可读模式打开,即"rb",其他都为可选参数

3. pickle.dumps(obj):以字节对象形式返回封装的对象,不需要写入文件中
4. pickle.loads(bytes_object): 从字节对象中读取被封装的对象,并返回

pickle模块三种异常类型

1. PickleError:封装和拆封时出现的异常类,继承自Exception

2. PicklingError: 遇到不可封装的对象时出现的异常,继承自PickleError

3. UnPicklingError: 拆封对象过程中出现的异常,继承自PickleError

pickle代码实例

dumps功能

dumps 将数据通过特殊的形式转换为只有python语言认识的字符串

import pickledata = ['aa', 'bb', 'cc']  # dumps 将数据通过特殊的形式转换为只有python语言认识的字符串p_str = pickle.dumps(data)print(p_str)

结果:

b'\x80\x03]q\x00(X\x02\x00\x00\x00aaq\x01X\x02\x00\x00\x00bbq\x02X\x02\x00\x00\x00ccq\x03e.
loads功能

loads 将pickle数据转换为python的数据结构

mes = pickle.loads(p_str)print(mes)

结果:

['aa', 'bb', 'cc']

感谢各位的阅读,以上就是"如何使用Python3 pickle模块"的内容了,经过本文的学习后,相信大家对如何使用Python3 pickle模块这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!

对象 模块 数据 类型 参数 封装 序列 功能 字符 字符串 字节 形式 学习 支持 特殊 二进制 内容 只有 实例 文件 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 云服务器有挖矿程序 数据库定时任务只执行一次 美国网络安全专业有哪些 网络安全管理实践视频教程 串口服务器端口号随便设的吗 网络安全手抄报小版 网站数据库删了怎么办 三级网络技术路由汇聚 登录cnki数据库 俄乌战争网络安全股为何无反应 戴尔r5 与r7 服务器区别 服务器可以连接到平台吗 服务器晚上不用时关闭可以吗 国家部门统筹协调网络安全 与高校的软件开发协议书 斗鱼的服务器 跨购搜网络技术有限公司 python程序软件开发 数据库的url有错 为什么显示没有服务器登录不让进 有口碑的重庆移动服务器租用 恒生互联网科技指数实时市盈率 网络安全的课题研究方向 深圳奥贝网络技术有限公司 网络安全客户山东 软件公司软件开发人员 如何使用手机连接电脑服务器 数据库运维方案报价 大多数软件开发项目都采用 中兴通讯软件开发武汉
0