在python

时间:2019-06-06 04:11:46

标签: python string split hex

我想解析并拆分从车辆CAN读取的十六进制字节数组。整个64位都读为bytearray(b'\xa0\xc6\xa6\xc2\x06\xe3)B'),我想根据位的位置将其拆分。例如,我需要101000的前6位。

基于从这里的一些阅读,我已经完成了从十六进制字节数组到二进制字符串的转换,并成功解析了它。我目前的方法是:

orig_data = bytearray(b'\xa0\xc6\xa6\xc2\x06\xe3)B')

def hex2bin(hex_string):
    scale = 16  
    num_of_bits = 8
    return bin(int(hex_string, scale))[2:].zfill(num_of_bits)

bin_str = hex2bin(bytes(orig_data).hex())

print(bin_str[:6])

由于我需要处理大量的高速数据传输,因此我想知道是否有比我目前采用的方法更快的方法?

0 个答案:

没有答案