当前位置: 首页 > news >正文

朔州公司做网站邯郸建移动网站费用

朔州公司做网站,邯郸建移动网站费用,免费下载建设银行官方网站,网络营销策划案模板Python 常用模块pickle pickle序列化模块 【一】定义 序列化:将数据结构或对象转换为可存储或传输的格式反序列化:将序列化后的数据恢复为开始的数据结构或者对象 【二】目的 数据持久化存储远程通信缓存进程间通信 【三】序列化 将对象转换为字节…

Python 常用模块pickle

pickle序列化模块

【一】定义

  • 序列化:将数据结构或对象转换为可存储或传输的格式
  • 反序列化:将序列化后的数据恢复为开始的数据结构或者对象

【二】目的

  • 数据持久化存储
  • 远程通信
  • 缓存
  • 进程间通信

【三】序列化

  • 将对象转换为字节流的过程称为序列化
  • pickle.dumps(obj, protocol=None, *, fix_imports=True, buffer_callback=None)
  • pickle.dump(obj, file, protocol=None, *, fix_imports=True, buffer_callback=None)
    • obj:要序列化的对象
    • file:一个文件对象,通常以二进制写入模式打开文件
    • protocol:序列化的版本号,可以省略,默认(None)最高版本
    • fix_imports:为True默认,尝试自动修复在不同Python版本之间可能的模块导入问题
    • buffer_callback:一个可选的回调函数,用于控制内部缓冲区的分配。默认使用内部缓冲区管理
import pickleuser_dict = {"name": "bruce", "age": "18"}str_dict = pickle.dumps(user_dict)
print(str_dict)
print(type(str_dict))
# b'\x80\x04\x95\x1f\x00\x00\x00\x00\x00\x00\x00}\x94(\x8c\x04name\x94\x8c\x05bruce\x94\x8c\x03age\x94\x8c\x0218\x94u.'
# <class 'bytes'>
with open("a.pkl", "wb") as fp:pickle.dump(user_dict, fp)
# pickle.dump(user_dict, open("a.pkl", "wb"))

【四】反序列化

  • 将字节流还原成对象的过程称为反序列化
  • pickle.loads(data, *, fix_imports=True, encoding="ASCII", errors="strict"buffers=None)
  • pickle.load(file, *, fix_imports=True, encoding="ASCII", errors="strict",buffers=None)
    • data:要序列化的字节流内容
    • file:一个文件对象,通常以二进制读取模式打开文件
    • fix_imports:为True默认,尝试自动修复在不同Python版本之间可能的模块导入问题
    • encoding:字符串编码格式
    • errors:解码错误的处理方式,与str.decode()方法中的参数相同。默认strict,即抛出UnicodeDecodeError
    • buffers:一个可选的PickleBuffer对象,用于提供自定义缓冲区的支持,默认None
import picklewith open("a.pkl", "rb") as fp:read_dict = pickle.load(fp)
# read_dict = pickle.load(open("a.pkl", "rb"))
print(read_dict)
print(type(read_dict))
# {'name': 'bruce', 'age': '18'}
# <class 'dict'>

【五】通用性

  • pickle 模块适用于大多数 Python 对象,包括自定义类的实例、内置数据类型等。

  • 不适用于某些特殊对象,比如文件句柄、数据库连接等。

  • josn序列化以后javajs等语言可以识别

  • pickle序列化以后,其他语言都不能识别

【六】应用

【1】函数写入文件、从文件读取函数

import pickledef my_func():print("这是定制函数")pickle.dump(my_func, open("a.pkl", "wb"))
read_func = pickle.load(open("a.pkl", "rb"))
read_func() # 这是定制函数

【2】将实例写入文件、从文件读取实例

import pickleclass PeaShooter:def __init__(self, name, attack_val):self.name = nameself.attack_val = attack_valpickle.dump(PeaShooter, open("a.pkl", "wb"))
read_object = pickle.load(open("a.pkl", "rb"))
ice_shooter = read_object("寒冰射手", 20)pickle.dump(ice_shooter, open("a.pkl", "wb"))
read_instance = pickle.load(open("a.pkl", "rb"))
print(read_instance.__dict__)
# {'name': '寒冰射手', 'attack_val': 20}
http://www.yayakq.cn/news/389666/

相关文章:

  • 2015网站设计风格网站建设服务亿企网络
  • 健身网站开发方式石家庄建设路网站
  • 无锡模板建站多少钱房屋设计3d图用什么软件
  • 网站制作完成之后进入了什么阶段徐州发布网站
  • 响应式网站的开发瑞安建设公司网站
  • 化妆培训网站模板物流网站的建设论文一万字
  • 厦门有没有做网站的网站开发net
  • 大鹏新区网站建设ppt模板免费整套
  • php网站开发需要学哪些门户网站开发流程视频
  • 网站建设中服务器的搭建方式有几种html5 经典网站
  • 图片下载网站苏州建网站的公
  • 淄博网站制作方案北京最近发布会直播
  • 做网站的时候宽高上海缪斯设计公司的主题文化
  • 加快建设企业门户网站建软件开发服务开票税目
  • 国外能下载模板的网站展厅设计展览设计公司
  • 网站备案取消前置审批淘宝店铺怎么引流推广
  • 无极分期网站网站建设构想
  • 网站开发计划和预算seo课程培训机构
  • 免费网站建站申请张家口认证助手app
  • 如何建设万网网站陕西省建设监理协会官网站
  • 怎样将qq空间建设为个人网站宁波seo哪家好快速推广
  • 手机免费建站系统如东网站建设
  • 房产网站建设公司海外推广平台有哪些?
  • 怎么样才能自己做网站打广告网页设计的基本步骤和流程
  • 东莞网站建设公司服务平台外贸公司介绍范文
  • 网站建设数据库建设2015年做那些网站致富
  • 白帽seo公司seo搜索优化培训
  • 泉州模板自助建站广州域名企业网站建站哪家好
  • wordpress 中介网站wordpress免登录支付
  • 自己做的网页加在网站文章上为什么打不开济南电商代运营公司