python比较部分数据中的每个2bytes

| 在python中,假设我运行时有数据...
search = target.readframes(2205)
每个帧包含2个字节。我想比较每个2字节的值并提取范围内的最高2个值。 例如,如果数据如下所示...
0000|0001|0002|0008|0007|000F|000D|000A|00FB|00FC|00FA|00F9|00F8|00D7|00C3|0000
然后结果将提取
000F
00FC
有人可以帮我实现这一目标。任何答案或有帮助的建议都很好。     
已邀请:
        首先,如果处理二进制数据,则应仅使用“ 4”个对象。他们需要Python 2.6+。 例
data = b\"\\x42\\x43\\x44\\x45\"
print(data[0:2], data[2:4])
是的,您可以对字节使用常规比较操作。 我不确定
readframes
返回的对象是哪种对象,但是如果不是按设计的字节,则应将其转换为字节。您可以只使用
data = bytes(obj)
。 不要使用字符串来处理二进制数据。     
        我了解您处理音频数据(假设
target
wave.Wave_read
对象),并希望找到每个通道的最大值。
import audioop

channel_l= audioop.tomono(search, 2, 1.0, 0.0)
channel_r= audioop.tomono(search, 2, 0.0, 1.0)
max_l= audioop.max(channel_l, 2)
max_r= audioop.max(channel_r, 2)
如果是,则您的问题应该更加明确;如果没有的话,请不要随意投票,因为人们没有用:)     

要回复问题请先登录注册