# 序列化对象p1

import pickle                               # 内置库

class People:

def __init__(self, name, age):

self.name = name

self.age = age

def sayhi(self):

print("Hi, my name is {}, and I'm {}".format(self.name, self.age))

p1 = People(name="Jack", age=30)

p1.sayhi()                                  # Hi, my name is Jack, and I'm 30

f = open('p1', 'wb')                        # 以二进制的方式

pickle.dump(p1, f)                          # 参数为python的对象和文件句柄

f.close()

这样写入python对象后,在程序目录下产生一个p1文件

下面我们来加载这个p1文件,从而使用p1这个对象对应的类中的属性

import pickle

class People:

def __init__(self, name, age):

self.name = name

self.age = age

def sayhi(self):

print("Hi, my name is {}, and I'm {}".format(self.name, self.age))

# 测试序列化对象的加载

f = open('p1', 'rb')                        # 用二进制的方式读

p2 = pickle.load(f)                         # 可以把p1文件中python对象加载到内存中,再把这个对象赋给p2

print(p2, p2.name, p2.age)                  # <__main__.people object at> Jack 30

p2.sayhi()                                  # Hi, my name is Jack, and I'm 30

python self 序列_python中序列化对象相关推荐

  1. python是动态_Python中的对象和动态性 [菜鸟的理解,高手莫入]

    当我们谈到python时常常会说python中一切都是对象,字符串是对象,整数型是对象,标准库中的对象当然也是对象,class本身也是对象,类型(type)也是对象. 但是初学的时候会错误地认为,既然 ...

  2. python生成序列_python中生成一个指定长度的列表,按1,2,3的序列生成

    加入我们希望写个生成1-10的正数,或者1-100的整数序列列表,我们不可能打100个数字吧,Python里要实现这个功能是非常的简单的 首先,Python3中有一个range函数 比如我们需要生成1 ...

  3. python 惰性属性_python中惰性对象

    惰性对象是什么? 首先需要明确啥是惰性计算(lazy evaluation):是指仅仅在真正需要执行的时候才计算的表达式的值.充分利用其特点 可以带来很多的便利 1. 避免不必要的计算,带来性能的提升 ...

  4. python中序列_python中什么是序列

    序列(serial): 一.序列是字符串,元组,列表的统称.序列有以下特点: ---都可以通过索引得到每一个元素 ---默认索引值总是从零开始 ---可以通过切片的方法得到一个范围内的元素的集合 -- ...

  5. python object类_Python中一切皆对象,这个对象究竟是什么?

    点击上方蓝字CGRnDStudio关注我们" CG TD编程技术相关领域自媒体 " 作者:古明地盆 https://www.cnblogs.com/traditional/p/13 ...

  6. python中callable什么意思_python中callable对象有什么用

    python中callable对象有什么用 发布时间:2020-12-10 09:27:00 来源:亿速云 阅读:58 作者:小新 小编给大家分享一下python中callable对象有什么用,希望大 ...

  7. python赋值语句格式_Python中变量和变量赋值的几种形式

    动态类型的语言 python是动态类型的语言,不需要声明变量的类型. 实际上,python中的变量仅仅只是用来保存一个数据对象的地址.无论是什么数据对象,在内存中创建好数据对象之后,都只是把它的地址保 ...

  8. python内置类型_Python内置对象类型

    核心数字类型: 数字:int,long,float,complex,bool 字符:str,unicode 列表:list 字典:dict 元组:tuple 文件:file 其他类型:集合(set), ...

  9. C++中序列化对象并存储到mysql

    1.序列化 C++序列化存在多种方式,我这里使用的boost,推荐看一个简单的教程. boost方法就是在类定义中添加一个友元类对象,并实现serialize()方法就可以让该类变为可序列化类.要使用 ...

最新文章

  1. (C++)1015 德才论
  2. 银行选型和排坑实战:用开源软件自建分布式数据服务平台
  3. VTK:Utilities之VectorArrayKnownLength
  4. oracle存储技术,oracle存储体系总结
  5. AspectJ学习笔记
  6. OpenGL 自定义着色器(Shaders)
  7. javascript-变量的作用域
  8. web前后台数据交互的四种方式
  9. matlab灰色关联分析,灰色关联度分析(为什么不显示图像)大佬们帮我看看
  10. 《Java核心技术》基于Java 17全面升级
  11. keil系列 魔法棒(目标选项)配置、编译工具ARMCC
  12. SOCKSCAP的使用方法
  13. excel两列数据对比找不同_Excel小白就不能用数据分析的办法找工作吗?
  14. imovie结合QuickTime Player进行手机视频剪辑
  15. Snaker工作流学习(一)
  16. Shapely的安装
  17. Bailian3255 十进制到六进制【进制转换】
  18. JS的arguments函数
  19. 20161012 Python 读书笔记之 输出、循环
  20. 虚拟机软件Parallels Desktop和VMware Fusion哪个好

热门文章

  1. 《集体智慧编程》——第一章导读
  2. ERP项目需要持续的呵护
  3. 三类危险的TXT文件
  4. vmware linux
  5. patator mysql 字典_利用patator进行子域名爆破
  6. Logstash入门简介
  7. namespace! 报错
  8. 牛顿插值--python实现
  9. ARM中ROM,RAM,FLASH区别
  10. SpringBoot在自定义类中调用service层等Spring其他层