首页 > 其他分享 >数据序列化

数据序列化

时间:2024-04-03 09:23:38浏览次数:21  
标签:python base64 bytes json 序列化 数据

★ 什么是数据的序列化

数据的序列化指的是将数据从其原始格式转换为一种可存储或传输的格式,通常是字节流或字符串的形式。这样做的目的是为了能够在不同系统、编程语言或设备之间进行数据交换、存储或传输,同时保持数据的结构完整性。

★ 序列化的应用场景:

  • 数据传输

    序列化可用于在网络中传输数据,比如Web应用中的前后端数据交互,API请求和响应的数据传输等。
    
  • 数据持久化

    序列化使得数据可以被保存在文件系统或数据库中,例如存储配置文件、持久化对象等。
    
  • 跨平台数据交换

    序列化使得不同平台、不同编程语言之间能够共享和解释数据,促进系统间的数据交换和互操作。
    

★ Python常见序列化工具

  • pickle

    • pickle 基本介绍

      pickle模块是python的标准模块,提供了对于python数据的序列化操作,可以将数据转换为bytes类型,其序列化速度比json模块要高
      
    • 使用方式

      pickle.dumps() 将python数据序列化为bytes类型
      pickle.loads() 将bytes类型数据反序列化为python的数据类型
      
  • base64

    • base64 基本介绍

      Base64是一种基于64个可打印字符来表示二进制数据的表示方法。由于2^6=64,所以每6个比特为一个单元,对应某个可打印字符。3个字节有24个比特,对应于4个Base64单元,即3个字节可由4个可打印字符来表示。在Base64中的可打印字符包括字母A-Z、a-z、数字0-9,这样共有62个字符,此外两个可打印符号在不同的系统中而不同
      
    • 使用方式

      base64.b64encode() 将bytes类型数据进行base64编码,返回编码后的bytes类型
      base64.b64deocde() 将base64编码的bytes类型进行解码,返回解码后的bytes类型
      
  • json

    • json 基本介绍

      用于JSON格式的序列化和反序列化。JSON序列化支持Python中的基本数据类型(如字典、列表、字符串、数字等)与JSON字符串之间的转换。
      
    • 使用方式

      json.dumps() 将python数据序列化为json字符串
      json.loads() 将json字符串反序列化为python的数据类型
      

标签:python,base64,bytes,json,序列化,数据
From: https://www.cnblogs.com/cs-songbai/p/18110650

相关文章

  • 半导体企业tapeout,如何保证机台数据准确、完整、高效地采集?
    Tapeout即流片,集成电路行业中将CDS最终版电路图提交给半导体制造厂商进行物理生产的过程。在芯片设计与制造的流程中,Tapeout是非常重要的阶段,包括了布局(Layout)、连线(Routing)、分析(Verification)、模拟仿真(Simulation)以及输出(Release)等步骤。Tapeout成功,IC设计的结果才能进入并完成......
  • 市场数据API大全,免费的全球金融数据 |实时股票tick数据API |金融数据API
    市场数据API和股票tick数据在金融领域有着广泛的用途,如投资者可以利用市场数据API和股票tick数据来进行市场分析,制定投资策略,进行股票和其他金融产品的交易决策。金融机构和交易员可以利用实时行情数据和tick数据来监控股票和市场走势,及时做出调整。媒体和新闻机构可以利用市场数......
  • 0基础学习Mybatis系列数据库操作框架——增删改操作
    大纲新增Mapper配置代码Mapper接口文件应用删除简单方案Mapper配置代码高级方案Mapper配置代码Mapper接口文件应用完整代码修改Mapper配置代码Mapper接口文件应用在《0基础学习Mybatis系列数据库操作框架——目录结构》一文中,我们已经搭建了查询操作的框架。......
  • 使用QuerryMapper条件查询器进行分页模糊查询,当想要渲染的数据需要两张表的字段该如何
    假如我们想要拿到新闻表的所有数据和发布新闻的用户名称的数据1.创建两张表,其中新闻表的authorId引用用户表的外键id,(这是一张新闻表)(这是一张用户表)author不在这个数据库表中,使用@TableField(exist=false)这个注解,表示这个字段不在新闻表里,用于业务处理。2.拿到分页......
  • 【专题】2024年中国金融科技(FinTech)行业发展洞察报告合集PDF分享(附原数据表)
    原文链接:https://tecdat.cn/?p=35581原文出处:拓端数据部落公众号金融监管体系的深刻变革正引领金融科技行业迈入一个更为严格且精细化的超级监管时代。在这个时代,数据要素的应用和金融场景的建设已经成为行业内不容忽视的关键领域。为顺应这一变革趋势,为金融机构提供紧贴其业务......
  • DM数据库金融行业案例(水贴一波)
     最近没遇到啥有意思的案例,都是些很简单的案例,但是又好久没写过博客了,决定水一波帖子,保持更新。......
  • 如何在数据库事务提交成功后进行异步操作
    如何在数据库事务提交成功后进行异步操作转载自:https://segmentfault.com/a/1190000004235193问题业务场景业务需求上经常会有一些边缘操作,比如主流程操作A:用户报名课程操作入库,边缘操作B:发送邮件或短信通知。业务要求操作A操作数据库失败后,事务回滚,那么操作B......
  • 软考 - 系统架构设计师 - 数据流图案例题
    阅读以下关于系统数据分析与建模的叙述,在答题纸上回答问题1至问题3。【说明】        某公司正在研发一套新的库存管理系统。系统中一个关键事件是接收供应商供货。项目组系统分析员小王花了大量时间在仓库观察了整个事件的处理过程,并开发出该过程所执行活动的列表:......
  • 如何利用爬虫与数据分析指导选择首篇小说类型:第三章通过免费代理网站建立ip池
    如何利用爬虫与数据分析指导选择首篇小说类型:第三章通过免费代理网站建立ip池第三章通过免费代理网站建立ip池文章目录如何利用爬虫与数据分析指导选择首篇小说类型:第三章通过免费代理网站建立ip池前言一、获取免费ip1.封装requests请求网址方法2.获取代理ip—开心代......
  • 深入理解数据结构第二弹——二叉树(2)——堆排序及其时间复杂度
    看这篇前请先把我上一篇了解一下:深入理解数据结构第一弹——二叉树(1)——堆-CSDN博客前言:相信很多学习数据结构的人,都会遇到一种情况,就是明明最一开始学习就学习了时间复杂度,但是在后期自己写的程序或者是做到哪个需要判断时间复杂度的题时,仍然判断不出来时间复杂度是多少,今......