Python struct使用反向endianess解包多个字节

时间:2018-06-05 10:17:46

标签: python struct buffer

所以我有一个N字节的缓冲区,我用它读取它们,它可以工作,但具有我需要的反向字节序。

buffer=struct.unpack_from( 'h'*(N/2), databuff)

我注意到字节序是反向的,所以我想尝试使用endianess并使用这个

buffer=struct.unpack_from( '<h'*(N/2), databuff)

但是我收到了这个错误:

>>>buffer=struct.unpack_from( '<h'*1344, databuff) struct.error: bad char in struct format

如何在多个字节上反转字节顺序?

1 个答案:

答案 0 :(得分:1)

您以格式指定字节顺序at most once,因此请写

var wss = "wss://";
if (document.location.protocol === "http:") {
   wss = "ws://";
}
var wsURL = wss + document.location.host + "/status?sessionId=<%=session.getId()%>";

其中buffer=struct.unpack_from('<'+'h'*(N//2), databuff) 是Python 3面向未来的。