`
Mr_Tank_
  • 浏览: 22547 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

Python3 pickle序列化

 
阅读更多


1、什么东西能用pickle模块存储?

  • 所有Python支持的原生类型: 布尔, 整数, 浮点数, 复数, 字符串,bytes(字节串)对象, 字节数组, 以及None.
  • 由任何原生类型组成的列表,元组,字典和集合。
  • 由任何原生类型组成的列表,元组,字典和集合组成的列表,元组,字典和集合(可以一直嵌套下去,直至Python支持的最大递归层数).
  • 函数,类,和类的实例(带警告)。

【摘自《深入Python》】

2、示例(保存数据到PICKLE文件):

#encoding:UTF-8
import pickle

#序列化
def dump_pickle():
    user={}
    user['id']=1
    user['name']='tanweijie'
    user['email']='tanweijie@outlook.com'
    user['sex']='boy'

    #with保证自动关闭文件
    #设置文件模式为'wb'来以二进制写模式打开文件
    with open('C:/Users/Mr_Tank_/Desktop/user.pickle','wb') as f:
        #dump()函数接受一个可序列化的Python数据结构
        pickle.dump(user,f)
        print('success')

#反序列化
def load_pickle():
    with open('C:/Users/Mr_Tank_/Desktop/user.pickle','rb') as f:
        user=pickle.load(f)
    #user变量是一个字典    
    print(user)
    

3、结果:

>>> dump_pickle()
success
>>> load_pickle()
{'id': 1, 'name': 'tanweijie', 'sex': 'boy', 'email': 'tanweijie@outlook.com'}



分享到:
评论

相关推荐

    Python使用pickle模块存储数据报错解决示例代码

    本文研究的主要是Python... pickle序列化后的数据,可读性差,人一般无法识别。 接下来我们看下Python使用pickle模块存储数据报错解决方法。 代码: # 写入错误 TypeError: write() argument must be str, not byte

    json和pickle序列化文件的区别.docx

    ### JSON与Pickle序列化详解 #### 一、引言 在Python开发中,序列化是一种将程序中的数据结构或对象状态转换为可存储或传输的形式的过程。这在需要保存对象的状态、网络通信以及跨语言的数据交换等方面尤为重要。...

    python3.6使用pickle序列化class的方法

    以上这篇python3.6使用pickle序列化class的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持软件开发网。 您可能感兴趣的文章:Python使用pickle模块实现序列化功能示例Python使用...

    Python数据序列化与反序列化:掌握pickle模块

    `pickle`模块的主要功能包括序列化和反序列化,分别对应于pickling(将Python对象转换为字节流)和unpickling(将字节流转换回Python对象)。这两种操作分别通过`pickle.dump()`和`pickle.load()`函数实现。序列化...

    Python 中Pickle库的使用详解

    Python中的Pickle库是一个用于序列化和反序列化Python对象结构的标准库模块。序列化是指将对象的状态信息转换为可以存储或传输的形式的过程,在Python中通常是指将对象转换为一个字节流。反序列化则是将这个字节流...

    Python使用pickle进行序列化和反序列化的示例代码

    Python的pickle库是一个强大的工具,用于对象的序列化和反序列化。序列化是将Python对象转换为字节流的过程,而反序列化则是将字节流恢复为原来的Python对象。这个过程允许我们将复杂的对象结构保存到文件或通过网络...

    Python-srsly用于Python的现代高性能序列化工具

    Python-srsly是一个针对Python开发的现代高性能序列化库,其设计目的是为了提供高效的数据序列化和反序列化功能,特别是在处理JSON、MessagePack和BSON等格式时表现优秀。这个库是为了解决标准库如json和pickle在...

    老男孩python-29-python Pickle JSON序列化.mp4

    Python运维教程

    Python使用pickle模块实现序列化功能示例

    pickle模块是Python中一个内建的标准库,它提供了对Python对象进行序列化和反序列化的功能。 pickle模块支持多种Python数据类型和一些自定义对象的序列化。通过pickle模块,可以将Python对象转换成字节流(一个字节...

    python序列化反序列化和异常处理笔记.doc

    Python提供了多种序列化库,如pickle、json、yaml、xml等。 异常处理是Python编程中用来捕获并处理程序运行时出现错误的机制。通过使用try/except语句,我们可以编写更加健壮的代码,当发生异常时,程序不会立即...

    Python Pickle 实现在同一个文件中序列化多个对象

    在Python编程语言中,Pickle模块是一个强大的工具,它允许我们序列化和反序列化Python对象结构。也就是说,它能够将复杂的数据结构或对象状态保存到磁盘文件中,并且之后可以从文件中恢复这些状态。在本篇文章中,...

    Python pickle类库介绍(对象序列化和反序列化)

    pickle模块用来实现python对象的序列化和反序列化。通常地pickle将python对象序列化为二进制流或文件。   python对象与文件之间的序列化和反序列化: 复制代码 代码如下: pickle.dump() pickle.load() 如果要实现...

    Python3.5 Json与pickle实现数据序列化与反序列化操作示例

    Pickle序列化的数据格式是Python特有的,不能跨语言使用。 - 序列化:`pickle.dumps()`用于将Python对象转化为二进制数据,可以写入文件: ```python import pickle def sayhi(name): print("hello", name) info...

    Python调用序列化数据工具Protocol Buffers——protobuf

    3. **与pickle相比**: Python的pickle用于Python对象的序列化,但不适用于跨语言数据交换,且安全性较低。 ### 五、protobuf在实际项目中的应用 1. **数据存储**: 存储结构化数据到数据库或文件,减少存储空间。 2...

    python3内置持久化模块pickle心得

    `pickle`是Python的一个内置模块,用于实现Python对象的序列化和反序列化。通过`pickle`,我们可以将Python中的各种数据结构(如列表、字典、元组等)转换成一个字节流(bytes),这样就可以方便地在网络上传输或者...

    Python-MessagePackPython是用于Python的MessagePack序列化实现

    MessagePack-Python与其他序列化库,如pickle、json、yaml等相比,有以下优势: - **性能**:MessagePack通常比JSON快,因为其二进制格式避免了字符转义和字符串解析的开销。 - **空间效率**:相比于文本格式,二...

    python tkinter pickle 实现注册登陆页面

    而pickle模块则是Python中用于序列化和反序列化的工具,它能将Python对象转化为字节流,便于存储和传输。在这个"python tkinter pickle 实现注册登陆页面"项目中,我们将探讨如何使用这两者来构建一个简单的用户注册...

    Python pickle模块实现对象序列化

    这篇文章主要介绍了Python pickle模块实现对象序列化,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 作用 对Python对象进行序列化,便于存储和传输 Python...

Global site tag (gtag.js) - Google Analytics