如何在Python中从十六进制序列转换CRC16

如何在Python中从十六进制序列转换CRC16,python,hex,crc16,Python,Hex,Crc16,我有一系列十六进制字节: 0x81 0x12 0xC0 0x00 0x01 0x05 我需要计算这个的CRC16。我: 我使用crcmod python模块如下: crc16 = crcmod.predefined.mkCrcFun('crc-16') print crc16('123456789') # works well print hex(crc16('\x81\x12\xC0\x00\x01\x05')) #EDIT : works aswell! 如何将这个十六进制序列表示为

我有一系列十六进制字节:

0x81 0x12 0xC0 0x00 0x01 0x05
我需要计算这个的CRC16。我:

我使用crcmod python模块如下:

crc16 = crcmod.predefined.mkCrcFun('crc-16')

print crc16('123456789') # works well

print hex(crc16('\x81\x12\xC0\x00\x01\x05')) #EDIT : works aswell!
如何将这个十六进制序列表示为ascii字符串(函数需要)


谢谢大家!

如果您可以自由编辑您的内容,请使用
'\x81\x12\xC0\x00\x01\x05'

,否则(例如,如果您的程序中已有字节),请执行以下操作


@jorrebor,是的,我这样做了,但我得到的是
0x815B
。。。同时,我正在使用
81 12 C0 00 01 05
crc16 = crcmod.predefined.mkCrcFun('crc-16')

print crc16('123456789') # works well

print hex(crc16('\x81\x12\xC0\x00\x01\x05')) #EDIT : works aswell!
values = [0x81, 0x12, 0xC0, 0x00, 0x01, 0x05]
string = "".join(chr(i) for i in values)
print crc16(string)