分析Python3中泡菜模块的使用情况

  介绍

小编给大家分享一下分析Python3中泡菜模块的使用情况,希望大家阅读完这篇文章后大所收获、下面让我们一起去探讨吧!

<强>泡菜模块特点

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

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

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

泡菜:用于python特有的类型和python的数据类型间进行转换,泡菜提供四个功能:转储,转储,负载,负载

<强>黄瓜可以存储什么类型的数据呢?

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

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

函数、类、类的实例

<强>泡菜模块中常用的方法

1。泡菜。转储(obj文件,协议=None,)

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

必填参数文件表示obj要写入的文件对象,文件必须以二进制可写模式打开,即“白平衡”

可选参数协议表示告知酸洗装置使用的协议,支持的协议有0,1,2,3,默认的协议是添加在Python 3中的协议3 .

2。泡菜。负载(文件、* fix_imports=True,编码=癆SCII",错误=皊trict")

必填参数文件必须以二进制可读模式打开,即“rb”,其他都为可选参数

3。pickle.dumps (obj):以字节对象形式返回封装的对象,不需要写入文件中

4。pickle.loads (bytes_object):从字节对象中读取被封装的对象,并返回

<强>泡菜模块三种异常类型

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

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

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

<强>代码实例

转储功能

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

import 困境   data =, (& # 39; aa # 39;,, & # 39; bb # 39;,, & # 39; cc # 39;),,   #,dumps 将数据通过特殊的形式转换为只有python语言认识的字符串   时间=p_str  pickle.dumps(数据)   打印(p_str)

结果

b # 39; \ x80 \ x03]问\ x00 (X \ x02 \ x00 \ x00 \ x00aaq \ x01X \ x02 \ x00 \ x00 \ x00bbq \ x02X \ x02 \ x00 \ x00 \ x00ccq \ x03e。

<强>加载功能

loads 将泡菜数据转换为python的数据结构

mes =, pickle.loads (p_str)   打印(mes)

结果

[& # 39;aa # 39;,, & # 39; bb # 39;,, & # 39; cc # 39;]

看完了这篇文章,相信你对分析Python3中泡菜模块的使用情况有了一定的了解,想了解更多相关知识,欢迎关注行业资讯频道,感谢各位的阅读!

分析Python3中泡菜模块的使用情况