Skip to main content
 首页 » 编程设计

Python 结构格式字符大小,为什么它比应该的大

2025年05月04日24itcoder

简单的问题,如果执行以下操作:

import struct 
struct.calcsize("6cHcBHIIQ") 

当我认为它应该是 28 时返回 32。

通过执行以下操作(缺少 Q):

import struct 
struct.calcsize("6cHcBHII") 

它返回 20,这正是我所期望的。

和做:

import struct 
struct.calcsize("Q") 

返回 8,这是正确的。

为什么将 Q 添加到顶部会导致 12 个额外字节而不是 8 个字节?

Python 3,Windows 机器。

谢谢。

请您参考如下方法:

对齐。参见 https://docs.python.org/3/library/struct.html#struct-alignment了解更多详情。

尝试struct.calcsize("=6cHcBHIIQ")。