作者blackspace98 (~我爱夏天~)
看板Python
标题[问题] crc检查
时间Sun Jan 6 13:16:40 2013
我要想要做crc的检查
其中
crc = calcString( '\x04\x03\x04\x00\xa0\x00\x00', INITIAL)
print (hex(crc))
0x11af会是我要的结果
但是如果我改写成
str = "04030400a00000"
a=''
for i in range(0,len(str),2):
a += r"\x" + str[i:i+2]
print (a) #\x04\x03\x04\x00\xa0\x00\x00
crc = calcString( a, INITIAL)
print (hex(crc))
结果会是0xaf0e
为什麽会这样呢?
我又应该如何修改呢?
谢谢~
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 42.75.173.91
1F:→ kdjf:在你的第一个string中,里面不是真的有/这个字元 01/06 13:53
2F:→ kdjf:strA='\x04\x03\x04\x00' 和你的a各自print出来就不一样 01/06 13:55
3F:推 kdjf:然後你如果是用python2.x的话,print是statment,不是function 01/06 13:57
4F:→ kdjf:你用的print()是从python3带回去的,有时候会怪怪的喔 01/06 13:57
5F:推 zha0:loop 那里可以用 a.decode('hex') or binascii.hexlify 01/06 19:29
6F:→ zha0:可以少打字 XD 01/06 19:29
7F:→ zha0:a.encode 打错 0rz 01/06 19:30