Python使用pickle模块储存对象操作示例
本文实例讲述了Python使用pickle模块储存对象操作。分享给大家供大家参考,具体如下:
众所周知,当我们需要储存数据的时候,就需要用到重定向。但是,这些都是储存简单的数据类型,那么当我们需要存储一个类的实例的时候该怎么存储呢?
实际上,我们需要用到一个模块———pickle,翻译为泡菜坛子
首先贴上一篇:pickle的使用方法
然后贴上一份代码:
# -*- coding:utf-8 -*-
import pickle
class Person():
def __init__(self, name, age):
self.name = name
self.age = age
def show(self):
print(self.name + '_' + str(self.age))
if __name__ == "__main__":
a = Person('tian', 20)
a.show()
c = Person('babydragon' ,5)
f = open('test.txt', 'wb')#这里一定要加上b,因为文件默认的write不能是bytes类型的,可以自己尝试着删去看报错
pickle.dump(a, f, 0)
pickle.dump(c, f, 0)
f.close()
f = open('test.txt', 'rb')
b = pickle.load(f)
mm = pickle.load(f)
cc = pickle.load(f)#有点类似于迭代器的感觉,这个就很强了,因为可以储存具体的实例666
f.close()
b.show()
mm.show()
print(b.name)
更多关于Python相关内容感兴趣的读者可查看本站专题:《Python文件与目录操作技巧汇总》、《Python文本文件操作技巧汇总》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程》
希望本文所述对大家Python程序设计有所帮助。
相关文章
详解如何为eclipse安装合适版本的python插件pydev
这篇文章主要介绍了详解如何为eclipse安装合适版本的python插件pydev,pydev是一款优秀的Eclipse插件,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2018-11-11
Python3.6实现连接mysql或mariadb的方法分析
这篇文章主要介绍了Python3.6实现连接mysql或mariadb的方法,结合实例形式分析了Python3.6针对mysql或mariadb数据库操作的相关模块安装、数据库与表的创建、数据库连接等操作技巧与注意事项,需要的朋友可以参考下2018-05-05
PyCharm 2020.2下配置Anaconda环境的方法步骤
这篇文章主要介绍了PyCharm 2020.2下配置Anaconda环境的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2020-09-09


最新评论