gpt4 book ai didi

Python结构体格式错误

转载 作者:行者123 更新时间:2023-11-30 22:54:35 25 4
gpt4 key购买 nike

所以我正在查看我大约 4 年前编写的代码,并且我知道它当时运行正确。但现在我尝试在与几年前编写它时不同的计算机上运行它,但现在出现错误。 (今天在 Windows 10 和 Ubuntu 上尝试过)

我现在使用的是 Python 2.7,就像我当时一样。我正在使用 Struct 库从文件中解压 C 类型,特别是我试图解压 4 字节长的值。这是 2.7 结构库的文档。 https://docs.python.org/2/library/struct.html

如果向下滚动到“格式字符”部分,您可以看到 C 类型表。

这是我的代码:

bps = int(unpack('L', fmap[o+10:o+14])[0])

这是我得到的错误。

error: unpack requires a string argument of length 8

让我困惑的部分是“长度8”部分。如果我将 C 类型更改为“I”,则代码可以正常执行。但文档似乎很清楚“L”也是 4 字节,并且它在过去有效。我想我可以使用“I”类型来达到我的目的,但我很好奇是否有其他人看到过这一点。

最佳答案

L标准尺寸是 4 个字节,但仅当您通过以 > 开头的格式字符串明确要使用的字节顺序时才使用它。 , < , ! ,或= 。否则,将使用计算机的依赖于平台的 native 大小。 (在本例中为 8 个字节。)

关于Python结构体格式错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37716415/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com