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实现图片批量加入水印代码实例

Python实现图片批量加入水印代码实例

这篇文章主要介绍了Python实现图片批量加入水印代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 写文章的时候可以设置是否添加...

对python多线程SSH登录并发脚本详解

对python多线程SSH登录并发脚本详解

测试系统中有一项记录ssh登录日志,需要对此进行并发压力测试。 于是用多线程进行python并发记录 因为需要安装的一些依赖和模块比较麻烦,脚本完成后再用pyinstaller打成exe...

Mac下Anaconda的安装和使用教程

前提 在刚接触python的时候我想大多数人都会面临一个问题,我到底是选择2还是3,因为现在网上好多的资料和视频项目中都还是用的2,我们跟着学习的时候肯定也是首先从2开始学的,但是我们心...

python 中的int()函数怎么用

int(x, [base]) 功能: 函数的作用是将一个数字或base类型的字符串转换成整数。 函数原型: int(x=0) int(x, base=10),base缺省值为10,也就是...

不可错过的十本Python好书

不可错过的十本Python好书

以往的文章中小编已经给大家陆续推荐了很多的Python书籍,可以说品种齐全、本本经典了,不知道你是不是已经眼花缭乱,不知道该选择哪本好了呢?今天我来为大家分享十本不可错过的Python好...