python - 使用 struct.pack

标签 python struct int unsigned

我的代码如下所示:

import struct

str = "AAAAAAA"
len = len(str)+32

package = struct.pack("!H",len)
print repr(package)

结果是:

"\x00'"

当我使用len = len(str) 结果是 \x00\x07

为什么当len大于32时,它不起作用?

最佳答案

您误解了 "\x00'" 结果。它是字符串十六进制字符代码值和常规可打印 ASCII 字符的混合。如果纯粹以十六进制字符代码显示,则为"\x00x\x27"

十进制的\x27是整数39,它是len(str)+32的结果。它也是 '(单引号)字符的字符代码,它是 repr() 显示内容的一部分。

关于python - 使用 struct.pack,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40722149/

相关文章:

java - 了解字节缓冲区

python - 使用cx_freeze后QGraphicsPixmapItem不会出现

python - 如何将分组结果转换为数据框

c++ - 对 'Inventory::insertEnd(Node*, int)' 的 undefined reference

domain-driven-design - 在域驱动设计中,作为身份字段的 guid 是否更好?

C++ int 和带分隔符的字符串解析

Python 方法访问器在每次访问时创建新对象?

python - 我怎样才能绘制ca。 2000 万个点作为散点图?

c# - 使用 pinvoke 将结构数组中的嵌入式 C 结构数组传递给 C#

c++ - 如何使用整数参数访问结构列表 (c++)?