1、什么东西能用pickle
模块存储?
- 所有Python支持的原生类型: 布尔, 整数, 浮点数, 复数, 字符串,
bytes
(字节串)对象,
字节数组, 以及None
.
- 由任何原生类型组成的列表,元组,字典和集合。
- 由任何原生类型组成的列表,元组,字典和集合组成的列表,元组,字典和集合(可以一直嵌套下去,直至Python支持的最大递归层数).
- 函数,类,和类的实例(带警告)。
【摘自《深入Python》】
2、示例(保存数据到PICKLE文件):
#encoding:UTF-8
import pickle
#序列化
def dump_pickle():
user={}
user['id']=1
user['name']='tanweijie'
user['email']='tanweijie@outlook.com'
user['sex']='boy'
#with保证自动关闭文件
#设置文件模式为'wb'来以二进制写模式打开文件
with open('C:/Users/Mr_Tank_/Desktop/user.pickle','wb') as f:
#dump()函数接受一个可序列化的Python数据结构
pickle.dump(user,f)
print('success')
#反序列化
def load_pickle():
with open('C:/Users/Mr_Tank_/Desktop/user.pickle','rb') as f:
user=pickle.load(f)
#user变量是一个字典
print(user)
3、结果:
>>> dump_pickle()
success
>>> load_pickle()
{'id': 1, 'name': 'tanweijie', 'sex': 'boy', 'email': 'tanweijie@outlook.com'}
分享到:
相关推荐
本文研究的主要是Python... pickle序列化后的数据,可读性差,人一般无法识别。 接下来我们看下Python使用pickle模块存储数据报错解决方法。 代码: # 写入错误 TypeError: write() argument must be str, not byte
以上这篇python3.6使用pickle序列化class的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持软件开发网。 您可能感兴趣的文章:Python使用pickle模块实现序列化功能示例Python使用...
主要介绍了Python使用pickle进行序列化和反序列化,帮助大家更好的理解和使用python的pickle库,感兴趣的朋友可以了解下
pickle模块用来实现python对象的序列化和反序列化。通常地pickle将python对象序列化为二进制流或文件。 python对象与文件之间的序列化和反序列化: 复制代码 代码如下: pickle.dump() pickle.load() 如果要实现...
适用于python小白更好的认识什么是json和pickle,更好地了解序列化,也更好地去了解他们之间的区别,希望大家喜欢
主要介绍了Python使用pickle模块实现序列化功能,结合实例形式分析了基于pickle模块的序列化操作相关操作技巧,需要的朋友可以参考下
这篇文章主要介绍了Python pickle模块实现对象序列化,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 作用 对Python对象进行序列化,便于存储和传输 Python...
Python 文件处理 09_使用pickle实现序列化和反序列化_神经元记忆移植.mp4
今天小编就为大家分享一篇Python Pickle 实现在同一个文件中序列化多个对象,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
主要介绍了Python3.5 Json与pickle实现数据序列化与反序列化操作,结合实例形式分析了Python3.5使用Json与pickle模块实现json格式数据的序列化及反序列化操作相关步骤与注意事项,需要的朋友可以参考下
在Python中,pickle模块可让您序列化和反序列化数据。 从本质上讲,这意味着您可以将Python对象转换为字节流,然后稍后在其他进程或环境中通过加载该字节流来重建它(包括对象的内部结构)(有关更多信息,请参见:...
shelve是一个简单的数据存储方案,类似key-value数据库,可以很方便的保存python对象,其内部是通过pickle协议来实现数据序列化。shelve只有一个open()函数,这个函数用于打开指定的文件(一个持久的字典),然后...
pickle(python3.x)和cPickle(python2.x的模块)相当于java的序列化和反序列化操作。 常采用下面的方式使用: import pickle pickle.dump(obj,f) pickle.dumps(obj,f) pickle.load(f) pickle.loads(f) 使用pickle模块...
学习过marshal模块用于序列化和反序列化,但marshal的功能比较薄弱,只支持部分内置数据类型的序列化/反序列化,对于用户自定义的类型就无能为力,同时...cPickle和pickle的序列化/反序列化规则是一样的,我们可以使用
第四周-第16章节-Python3.5-Json与pickle数据序列化.avi
用于序列化的两个模块 json:用于字符串和Python数据类型间进行转换 pickle: 用于python特有的类型和python的数据类型间进行转换 json提供四个功能:dumps,dump,loads,load pickle提供四个功能:dumps,dump,...
dill序列化所有python关于Dill dill扩展了python的pickle模块,用于对大多数内置python类型进行序列化和反序列化。 序列化是将莳萝序列化所有python的过程。关于Dill dill扩展了python的pickle模块,用于对大多数...