struct模块进行数据打包

news/2024/11/21 1:33:08/

原理: 将一组简单数据进行打包,转换为bytes格式发送。或者将一组bytes格式数据,进行解析。
接口使用
Struct(fmt)
功能: 生成结构化对象
参数:fmt 定制的数据结构

st.pack(v1,v2,v3…)
功能: 将一组数据按照指定格式打包转换为bytes
参数:要打包的数据
返回值: bytes字节串

st.unpack(bytes_data)
功能: 将bytes字节串按照指定的格式解析
参数: 要解析的字节串
返回值: 解析后的内容

struct.pack(fmt,v1,v2,v3…)
struct.unpack(fmt,bytes_data)
说明: 可以使用struct模块直接调用pack unpack。此时这两函数第一个参数传入fmt。其他用法功能相同

import struct
st=struct.Struct('i28sf')
data = st.pack(1,'张三'.encode(),1.6)
st.unpack(data)
st.unpack(data)[1].decode()
st.unpack(data[1].decode().replace('\x00,'')

在这里插入图片描述


http://www.ppmy.cn/news/66739.html

相关文章

土地报征简介

报征概念: 土地报征是指国家为了人民整体利益出发,根据我国相关法律和法规的要求和流程, 将集体土地性质转化为国有土地性质,并给予被征地的对象给予合理的补偿和安置工作。报征4个价段: 1、组卷阶段 (1&…

ubuntu基于Docker搭建Gitlab服务器

一、安装docker 1,先卸载掉旧版本 $ sudo apt-get remove docker docker-engine docker.io containerd runc2,更新apt包 $ sudo apt-get update3,安装软件包以允许apt通过https使用存储库 $ sudo apt-get install \apt-transport-https \c…

2023Java面试题(附答案)

精选Java面试题162道 什么是Java,Java的优点是什么?Java是一种面向对象的编程语言,请解释面向对象的概念是什么?Java编程语言有哪些数据类型?什么是Java中的Wrapper类?包装类有哪些?Java中的基…

【游戏分析】《某某明月刀》之御风神行

御风神行是《某某明月刀》里很常用的一个技能,可以用来在各大地图的传送点之间相互传送而不需要经过车夫,虽然冷却时间很长,但是非常实用。但是想去到某个传送点必须要先点亮这个传送点,也就是说要跑到传送点附近才可以。但是通过…

[Netty] 面试问题 1 (十八)

文章目录 1.Netty的特点2.Netty应用场景3. Netty核心组件4.Netty的线程模型5. EventloopGroup和EventLoop6.Netty 的零拷贝7.Netty 长连接和心跳机制8.Netty 服务端和客户端的启动过程9.Netty 的 Channel 和 EventLoop10.Netty 的 ChannelPipeline11.Netty 中的 ByteBuf12.Nett…

第一章 数组

目录 一、二分查找1.1 二分查找母题1.2 搜索插入位置1.3 在排序数组中查找元素的第一个和最后一个位置1.4 x 的平方根1.5 有效的完全平方数 二、双指针2.1 移除元素2.2 删除有序数组中的重复项2.3 移动零2.4 比较含退格的字符串2.5 有序数组的平方 三、滑动窗口3.1 长度最小的子…

HADOOP入门

1.Hadoop简介 组件 Hadoop由4部分组成 1)HDFS:(Hadoop Distribute File System)分布式文件系统,海量数据存储解决方案 2)MapReduce:Hadoop的分布式运算编程框架 3)Yarn:分布式资源调度平台和任务监控平台 4)Commons: HADOOP底层技术支持 主要用来解决:大数据存储,大数据分…

docker入门和docker应用场景,镜像制作,服务编排,docker私服

一、简介 docker解决了什么问题docker和虚拟机的区别在CentOS7里安装docker 1. docker简介 我们写的代码会接触到好几个环境:开发环境、测试环境以及生产环境等等。多种环境去部署同一份代码,由于环境原因往往会出现软件跨环境迁移的问题(也就…