假设我有一个带有以下模式的字节打包消息:
sudo yum install python35u-devel.x86_64
将字节序列转换为python变量的推荐pythonic方法是什么? “struct”模块是否可以很好地解压缩具有任意位长字段的字节数组?
答案 0 :(得分:2)
将字节序列转换为python变量的推荐pythonic方法是什么?
这个问题很快就会被关闭。你想要的是阅读this python doc page about struct
and bytearray
s。
它将向您展示如何使用格式pack
和unpack
数据。
" struct"模块是否可以解压缩具有任意位长字段的字节数组?
它将向您展示如何使用格式pack
和unpack
数据。
是的,如下:
import struct
color, radius, new = struct.unpack("If?", incoming_bytes)
检查format characters以定义格式字符串,然后完成。
您可以使用更加臃肿的库,例如construct
,但TBH,此格式非常简单,如果您unpack
提前pack
晚,您可以自由组织您希望在代码中使用数据。
e.g:
class Ball:
def __init__(self, color, radius, new):
self.color = color
self.radius = radius
self.new = new
Ball(*unpack("If?", incoming_bytes))