python 对象序列化 pickling_Python中的Pickle:对象序列化

Python的pickle模块用于对象序列化和反序列化,方便数据持久化和跨程序传递。本文介绍了pickle的基本用法,包括pickle的用途、适用场景、不适用情况、可腌制的对象类型,并对比了pickle与JSON的区别。此外,还展示了如何存储、读取pickle文件,以及如何在Python 3中处理Python 2的pickle文件。
摘要由CSDN通过智能技术生成

作为数据科学家, 你将使用字典, DataFrames或任何其他数据类型形式的数据集。与这些对象一起使用时, 你可能需要将它们保存到文件中, 以便以后可以使用它们或将其发送给其他人。这就是Python的pickle模块的用途:它将对象序列化, 以便可以将它们保存到文件中, 然后稍后再次加载到程序中。

在本教程中, 你将涵盖以下主题:

什么是酸洗?

泡菜可以用来做什么?

何时不使用泡菜

什么可以腌制?

泡菜vs JSON

酸洗文件

解开文件

压缩泡菜文件

在Python 3中取消选择Python 2对象

腌制和多处理

如果你想了解有关如何在Python中导入数据的更多信息, 请务必查看我们的”在Python中导入数据”课程及其相应的备忘单。

什么是酸洗?

Pickle用于对Python对象结构进行序列化和反序列化, 也称为封送处理或展平。序列化是指将内存中的对象转换为可以存储在磁盘上或通过网络发送的字节流的过程。稍后, 可以检索此字符流并将其反序列化回Python对象。酸洗不要与压缩混淆!前者是将对象从一种表示形式(随机存取存储器(RAM)中的数据)转换为另一种表示形式(磁盘上的文本)的转换, 而后者是用较少的位对数据进行编码的过程, 以节省磁盘空间。

你可以用泡菜做什么?

酸洗对于需要一定程度的数据持久性的应用程序很有用。程序的状态数据可以保存到磁盘, 因此以后可以继续进行处理。它还可以用于通过传输控制协议(TCP)或套接字连接发送数据, 或将python对象存储在数据库中。 Pickle在使用机器学习算法时非常有用, 你希望将它们保存起来以便以后可以做出新的预测, 而不必重写所有内容或重新训练模型。

何时不使用泡菜

如果要跨不同的编程语言使用数据, 则不建议使用pic

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值