def byteStrToInt(byteStr: bytes)->int:
byteSt = byteStr.decode()
result = int(byteStr[1:], 2)
if byteSt[0] == "1":
result = -result
return result
测试:
input: b'1011'
output: -3
input: b'0011'
output: 3
说明:
b'0011'属于<class:bytes>类型,
先使用decode()方法解码成str,
再拿到符号位进行判断,
最后使用int()方法转成10进制。
自己用的时候可以稍微diy一下,以符合需求