Unpack需要长度为44 python的字符串参数

2024-10-02 08:23:29 发布

您现在位置:Python中文网/ 问答频道 /正文

我有while循环来获取数据包

unpackedData = struct.unpack("!BBHHHBBH4s4sHH4s4s4sHH4s", data[:44])

此行引发异常

Unpack requires a string argument of length 44 python

但在使用调试器之后,我注意到它会在几个循环之后发生,我想这是因为缓存已被填满。在

有没有办法清除python缓存或销毁对象之类的东西?在


Tags: ofdatastringargument数据包lengthstruct调试器
1条回答
网友
1楼 · 发布于 2024-10-02 08:23:29

我的最佳猜测是,在while循环中,每次都将data字符串缩短44个字符,但是,44不能平均地分割原始字符串,因此在最后一次迭代中,只剩下一段长度小于44个字符的字符串。在

python并不抱怨切片,它只返回一个比您预期的要小的字符串。e、 g.:

print len("foo"[:500])  #3
print "foo"[:500]       #foo

相关问题 更多 >

    热门问题