Python 结构包镜像

Posted

技术标签:

【中文标题】Python 结构包镜像【英文标题】:Python struct pack mirroring 【发布时间】:2021-07-16 10:48:00 【问题描述】:

以下是我的代码示例:

import struct

data = []
for i in range(5):
    firmware_addr = 128*i
    p = struct.pack('>I', firmware_addr)
    print("Addr: 0, pack: 1".format(firmware_addr, p))

输出:

Addr: 0, pack: b'\x00\x00\x00\x00'
Addr: 128, pack: b'\x00\x00\x00\x80'
Addr: 256, pack: b'\x00\x00\x01\x00'
Addr: 384, pack: b'\x00\x00\x01\x80'
Addr: 512, pack: b'\x00\x00\x02\x00'

它工作正常。但我需要有这样的输出:

Addr: 0, pack: b'\x00\x00\x00\x00'
Addr: 128, pack: b'\x80\x00\x00\x00'
Addr: 256, pack: b'\x00\x01\x00\x00'
Addr: 384, pack: b'\x80\x01\x00\x00'
Addr: 512, pack: b'\x00\x02\x00\x00'

我该怎么做?

【问题讨论】:

【参考方案1】:

好吧,这比我想象的要容易。 解决方案: p[::-1]

【讨论】:

以上是关于Python 结构包镜像的主要内容,如果未能解决你的问题,请参考以下文章

Python包结构和函数式编程

复杂包结构中的 Python 导入语句?

创建 Python 包结构和 egg 的简单说明是啥?

使用Python中NetworkX包绘制深度神经网络结构图

以编程方式在嵌入式 python 3 中定义包结构

:Python项目组织结构-第一节:包模块以及__init__.py文件