json 与pickle模块(序列化与反序列化))

Posted C3的脚印

tags:

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

一、什么是序列化(pickling):

我们把对象(变量)从内存中变成可存储或传输的过程称之为序列化。

序列化可以持久保存状态, 不会根据计算机断电或者重启程序,而使得之前的数据状态丢失。可以在下次程序执行时 根据之前执行的状态继续执行。

序列化之后可以跨平台数据交互。就打破了平台/编程语言差异化带来的限制,数显了跨平台数据 交互。

简单的说就是:

序列化: 内存中的数据结构---》转成一种中间格式(字符串) ---》存到文件中

 

 反过来,把变量内容从序列的对象重新读到内存里称之为反序列化(unpickling)。

反序列化: 文件------》读取中间格式(字符串)-----》转化成内存中数据

 

二:序列化之json  与  pickle:应用

用于序列化的两个模块

json      用于字符串和python数据类型间进行转换

pickle   用于python特有的类型和python数据类型间进行转换

 

以上是关于json 与pickle模块(序列化与反序列化))的主要内容,如果未能解决你的问题,请参考以下文章

Python序列化与反序列化-json与pickle

python中的序列化与反序列化

21天学习python编程_pickle模块序列化与反序列化

21天学习python编程_pickle模块序列化与反序列化

python序列化与反序列化(json与pickle)

json模块与hashlib模块的使用