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

高端网站建设公司价格推广app平台

高端网站建设公司价格,推广app平台,成都网站建设推广在,豫建市2021 42号Python marshal 模块学习笔记 1. 简介 marshal 是 Python 的内部序列化格式,主要用于序列化和反序列化 Python 对象。它是 Python 字节码(.pyc文件)使用的序列化格式,比 pickle 更原始和受限,但也更快速和安全。 http…

Python marshal 模块学习笔记

在这里插入图片描述

1. 简介

marshal 是 Python 的内部序列化格式,主要用于序列化和反序列化 Python 对象。它是 Python 字节码(.pyc文件)使用的序列化格式,比 pickle 更原始和受限,但也更快速和安全。
https://docs.python.org/zh-cn/3.9/library/marshal.html?highlight=marshal#module-marshal

2. 核心方法

marshal 模块提供了四个主要方法:

  1. marshal.dump(value, file)

    • 将 Python 对象序列化并写入文件
    • 需要以二进制写入模式打开文件(‘wb’)
  2. marshal.load(file)

    • 从文件中读取并反序列化为 Python 对象
    • 需要以二进制读取模式打开文件(‘rb’)
  3. marshal.dumps(value)

    • 将 Python 对象序列化为字节串
    • 返回 bytes 类型数据
  4. marshal.loads(bytes)

    • 将字节串反序列化为 Python 对象
    • 接收 bytes 类型数据

3. 支持的数据类型

marshal 支持以下 Python 数据类型:

  • None
  • 整数 (int)
  • 浮点数 (float)
  • 复数 (complex)
  • 字符串 (str)
  • 元组 (tuple)
  • 列表 (list)
  • 字典 (dict)
  • 布尔值 (bool)
  • 字节串 (bytes)
  • 代码对象 (code object)
  • 冻结集合 (frozenset)

4. 不支持的数据类型

marshal 不支持以下类型:

  • 自定义类和实例
  • 函数和方法
  • 模块
  • 文件对象
  • 套接字对象
  • 其他复杂对象

5. 使用示例

5.1 使用 dump/load 操作文件

import marshal# 写入数据
data = {'name': 'qifumin', 'age': 23}
with open('data.marshal', 'wb') as f:marshal.dump(data, f)# 读取数据
with open('data.marshal', 'rb') as f:loaded_data = marshal.load(f)

5.2 使用 dumps/loads 操作字节串

import marshal# 序列化为字节串
data = {'languages': ['Python', 'Java', 'Go']}
bytes_data = marshal.dumps(data)# 从字节串反序列化
recovered_data = marshal.loads(bytes_data)

6. 注意事项

  1. 版本兼容性

    • 不同 Python 版本之间的 marshal 格式可能不兼容
    • 可以通过 marshal.version 查看当前版本号
  2. 使用场景

    • 主要用于 Python 内部(如.pyc文件)
    • 不建议用于长期存储或跨版本数据交换
  3. 替代方案

    • 一般数据序列化推荐使用 pickle
    • 跨语言数据交换推荐使用 json
    • 配置文件推荐使用 yaml

7. 优缺点

优点:

  • 执行速度快
  • 格式简单
  • Python 内置模块,无需额外安装

缺点:

  • 不支持复杂对象
  • 版本兼容性问题
  • 不适合长期存储
  • 不支持跨语言使用

8. 最佳实践

  1. 仅在需要高性能序列化简单数据类型时使用
  2. 在使用前检查数据类型的兼容性
  3. 处理文件时使用 with 语句确保正确关闭
  4. 对于一般用途,优先考虑其他序列化方案
http://www.zhongyajixie.com/news/47936.html

相关文章:

  • 黄冈做网站的公司网上销售方法
  • 青海高端网站建设网络营销推广策略
  • 简述织梦网站上传及安优化排名软件
  • 平面设计现在怎么样seo引擎优化公司
  • 简单产品设计方案模板搜索引擎关键词seo优化公司
  • 红色系网站北大青鸟
  • ppt模板免费模板东莞seo网站管理
  • 金融企业网站建设百度搜索关键词热度
  • 中国建设会计网站百度指数总结
  • 怎么做代刷网站宁波公司做网站
  • 可以接项目做的网站vi设计
  • 选择好的佛山网站建设有免费做网站的吗
  • 温州哪里有做网站下载百度卫星导航
  • 用织梦做的网站下载地址知名品牌营销策略
  • 网络专业的网站建设价格低app拉新平台有哪些
  • 铜川做网站今日的新闻头条10条
  • 做视频的素材网站seo查询官网
  • 做网站用语言我是做推广的怎么找客户
  • 做的网站需要什么技术上海seo服务外包公司
  • 天津做网站首选津坤科技bwin优化大师官网
  • 阿里国际站韩语网站怎么做上海seo推广整站
  • 自己做网站需要哪些流程河南网站推广电话
  • 用html5做的网站素材南昌网站seo
  • 有哪些专业做饰品的网站app免费的黄冈网站有哪些平台
  • 商家做网站的优点深圳全网营销方案
  • 如何做阿里巴巴企业网站济南网站优化公司
  • 哪里可以做网站系统网络营销的重要性与意义
  • 单位门户网站win优化大师有用吗
  • 做网站优惠seo收费
  • 天津搜索引擎推广系统爱站seo工具包下载