【发布时间】:2015-11-27 23:49:46
【问题描述】:
以下代码在 python 2.7 中运行良好:
def GetMaxNoise(data, max_noise):
for byte in data:
noise = ComputeNoise(struct.unpack('=B',byte)[0])
if max_noise < noise:
max_noise = noise
return max_noise
其中 data 是一个包含二进制数据的字符串(取自网络数据包)。
我正在尝试将它移植到 Python 3,我得到了这个:
GetMaxNoise 中的文件“Desktop/Test.py”,第 2374 行
noise = ComputeNoise(struct.unpack('=B',byte)[0])
TypeError: 'int' 不支持缓冲区接口
如何将“数据”转换为 unpack() 所需的适当类型?
【问题讨论】:
标签: python