Python使用pickle模块储存对象操作示例

yipeiwu_com6年前Python基础

本文实例讲述了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程序设计有所帮助。

相关文章

python实现键盘控制鼠标移动

玩QQ桌球游戏时,有时候用鼠标控制鼠标指针的微小移动比较费劲儿,所以想写个程序,可以用键盘的上下左右键来控制鼠标的移动,每次只移动一个像素。 本脚本依赖pywin32、pyHook和py...

Python for Informatics 第11章之正则表达式(二)

注:以下文章原文来自于Dr Charles Severance 的 《Python for Informatics》 11.1 正则表达式的字符匹配   我们可以用许多其它的特殊字符...

Django Form and ModelForm的区别与使用

Form介绍 在HTML页面中利用form表单向后端提交数据时,都会写一些获取用户输入的标签并且用form标签把它们包起来。 与此同时我们在好多场景下都需要对用户的输入做校验,比如校验...

Python对象的深拷贝和浅拷贝详解

本文内容是在《Python核心编程2》上看到的,感觉很有用便写出来,给大家参考参考! 浅拷贝 首先我们使用两种方式来拷贝对象,一种是切片,另外一种是工厂方法。然后使用id函数来看看它们的...

Python中文编码那些事

首先,要明白encode()和decode()的区别  encode()的作用是将Unicode编码的字符串转换为其他编码格式。 例如: st1.encode("utf-8")...