• python序列化之pickle


    来自引用:

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

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

    【摘自《深入Python》】

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

    [python] view plain copy
     
    1. #encoding:UTF-8  
    2. import pickle  
    3.   
    4. #序列化  
    5. def dump_pickle():  
    6.     user={}  
    7.     user['id']=1  
    8.     user['name']='tanweijie'  
    9.     user['email']='tanweijie@outlook.com'  
    10.     user['sex']='boy'  
    11.   
    12.     #with保证自动关闭文件  
    13.     #设置文件模式为'wb'来以二进制写模式打开文件  
    14.     with open('C:/Users/Mr_Tank_/Desktop/user.pickle','wb') as f:  
    15.         #dump()函数接受一个可序列化的Python数据结构  
    16.         pickle.dump(user,f)  
    17.         print('success')  
    18.   
    19. #反序列化  
    20. def load_pickle():  
    21.     with open('C:/Users/Mr_Tank_/Desktop/user.pickle','rb') as f:  
    22.         user=pickle.load(f)  
    23.     #user变量是一个字典      
    24.     print(user)  
    25.       


    3、结果:

    [python] view plain copy
     
    1. >>> dump_pickle()  
    2. success  
    3. >>> load_pickle()  
    4. {'id': 1, 'name': 'tanweijie', 'sex': 'boy', 'email': 'tanweijie@outlook.com'}  

     

  • 相关阅读:
    解決 Android Studio 不停 Indexing 的問題(Updating Indices: Indexing paused due to batch update)
    通过某个关键字排序一个字典列表
    django cmes 后台管理
    python 处理音视频
    python 加密
    PyEngine3D
    获取单词列表出现频率最高的单词
    django 上传文件
    python之MD5加密
    切片对象的demo
  • 原文地址:https://www.cnblogs.com/cfj271636063/p/5773106.html
Copyright © 2020-2023  润新知