擅长:python、mysql、java
<p>假设<code>data</code>变量是一个<em>字节串,它是从网络数据包上的二进制文件中获得的,它在Python2和Python3中的处理方式不同。在</p>
<p>在Python2中,它是一个字符串。当您迭代它的值时,会得到单字节字符串,您可以使用<code>struct.unpack('=B')[0]</code>将其转换为int</p>
<p>在Python3中,它是一个<code>bytes</code>对象。当你迭代它的值时,你可以直接得到整数!所以你应该直接使用:</p>
<pre><code>def GetMaxNoise(data, max_noise):
for byte in data:
noise = ComputeNoise(byte) # byte is already the int value of the byte...
if max_noise < noise:
max_noise = noise
return max_noise
</code></pre>