Python使用pickle模块储存对象操作示例
本文介绍Python中pickle模块的用法,重点演示如何存储和读取类的实例对象。通过定义Person类,使用pickle.dump将多个实例写入二进制文件,并利用pickle.load按顺序读取,展示了对象持久化的基本流程及注意事项。
本文通过具体实例,详细讲解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编程实践提供有益帮助。
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













