所以我有一个包含 N 字节的缓冲区,我用它来读取它们,它可以工作,但具有与我需要的相反的字节序。
buffer=struct.unpack_from( 'h'*(N/2), databuff)
我注意到字节顺序是相反的,所以我想尝试字节顺序,并且我使用这个
buffer=struct.unpack_from( '<h'*(N/2), databuff)
但是我收到此错误:
>>>buffer=struct.unpack_from( '<h'*1344, databuff) struct.error: bad char in struct format
如何反转多个字节的字节顺序?
最佳答案
您指定字节顺序 at most once格式,所以写
buffer=struct.unpack_from('<'+'h'*(N//2), databuff)
其中 //
是 Python 3 面向 future 的。
关于Python struct 使用反向字节顺序解压多个字节,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50697673/