Am正在尝试解码ASN1格式数据。根据数据规范文档。预计将获得4个字节,我需要将其转换为Integer。
def decode_chargingId(self,field_length,field_value):
print(field_lenght)
return int(field_value)
上面是正在执行的那段代码,同样,我也遇到了错误。
int()以10为底的无效文字:'\ x16'
当我尝试在VS代码调试器中查看带有断点的字节时,我看到的字节为 b'\ x16 \ x00 \ xf70'。
我只是想使用python中的int函数获取那些字节的等效整数值。
答案 0 :(得分:0)
我用错误的方法转换为整数。下面的代码可以很好地将字节转换为整数。
def decode_chargingId(self,field_length,field_value):
result = 0
for b in field_value:
result = result * 256 + int(b)
return result