如何在Python 3中手动构造指定格式的字节字符串
Python 3 构造指定字节串的实现方法
以下是两种常用的实现方式,都可以得到你需要的目标字节串:
方式1:直接使用字节字面量声明
如果你的字节串是固定值,直接写字节字面量即可,Python 3支持省略十六进制转义的前导零,和你给出的目标格式完全兼容:
target = b'\x02\x0\x33\x11\xc3\x0\x24\x4\x0\x58\x3'
方式2:通过整数序列构造
如果需要动态调整字节内容,可以先定义每个字节的十六进制值列表,再通过bytes()构造:
# 列表中每个元素对应一个字节的十六进制值 byte_list = [0x02, 0x00, 0x33, 0x11, 0xc3, 0x00, 0x24, 0x04, 0x00, 0x58, 0x03] target = bytes(byte_list)
你可以通过打印验证结果:
print(target) # 输出:b'\x02\x003\x11\xc3\x00$\x04\x00X\x03' # 注:可打印的ASCII字符会直接显示为字符,比如0x33对应字符'3'、0x24对应'$'、0x58对应'X',和你给出的目标字节串值完全一致
两种方式的适用场景:
- 字节串固定无需修改时,优先选字节字面量写法,更简洁直观
- 需要动态生成、修改部分字节值时,选整数序列构造的方式更灵活
内容的提问来源于stack exchange,提问作者Hendrik Bezuidenhout
相关产品推荐
相关产品推荐

