【发布时间】:2020-05-06 21:12:13
【问题描述】:
我正在编写需要计算某个十六进制值的二进制补码的脚本。
我从stackoverflow中获取了这个函数:
def checksum_calc(s):
sum = 0
for c in s:
sum += ord(c)
sum = -(sum % 256)
return '%2X' % (sum & 0xFF)
但如果我引入如下数据:
string = '\x00\x03\x03\xFF'
是正确的,但如果我这样介绍:
string = b'\x00\x03\x03\xFF'
我得到不正确的校验和。
你能帮我解决这个问题吗?
【问题讨论】:
标签: python python-3.x encode checksum