python-json&pickle模块(序列化模块)

Posted OYxing

tags:

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

什么叫序列化?

就是把内存里的数据存到硬盘上。

为什么要把了内存里的数据存在硬盘上?

1.程序在运行,关闭了,内存数据丢失。

2.下次程序再启动,再从硬盘上读回来,还是原来的格式的话,那是极好的。

3.内存里的数据多为嵌套字典的形式。

把内存数据取出来有什么意义?

  1.把内存数据,通过网络 共享给其他人。

  2.可以跨平台、跨语言共享数据。eg:c、java、python

#1.json 用法
# dumps 序列化

import json


data = {k1: 123, k2: 345}
# 把data序列化成字符串
d = json.dumps(data)
print(d, type(d))

# 把data序列化成字符串并存入文件
f = open(test.json, w)
json.dump(data, f)

# 把序列化字符串转回字典
d2 = json.loads(d)
print(d2[k1])

# 把data序列化成字符串并存入文件
f = open(test.json, r)
data2 = json.load(f)
print(data2, type(data2))

注意:dump可以写多次,但是load只能是一次。会报json反序列化错误。

 

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

Python-json 和 pickle

python-json模块函数

Python-json模块

python序列化: json & pickle & shelve 模块

python序列化: json & pickle & shelve 模块

json&pickle模块configparse/hashlib/subprocess 模块