python-2.7 - 无法将 python 字节转换为整数(int() 的无效文字,基数为 10:'\x16')
问题描述
我正在尝试解码 ASN1 格式的数据。根据数据规范文档。预计将获得 4 个字节,我需要将其转换为整数。
def decode_chargingId(self,field_length,field_value):
print(field_lenght)
return int(field_value)
上面是正在执行的一段代码,我得到同样的错误。
基数为 10 的 int() 的无效文字:'\x16'
当我尝试在 VS 代码调试器中查看带断点的字节时,我将字节视为b'\x16\x00\xf70'。
我只是想在 python 中使用 int 函数来获取这些字节的整数值。
解决方案
我唱错了转换为整数的方法。下面的代码可以很好地将字节转换为整数。
def decode_chargingId(self,field_length,field_value):
result = 0
for b in field_value:
result = result * 256 + int(b)
return result
推荐阅读
- python - 有没有办法根据条件语句从各种列表中删除项目?
- git - 为什么我们的 Git-Tree 看起来这么乱
- java - JBOSS Server 卡在启动状态
- fonts - 背面 XeLatex:未找到 Comic Sans Italic
- c++ - FileInformation - 提取文件重命名详细信息
- javascript - + 运算符覆盖而不是连接 Javascript 中的字符串
- c++ - 具有自定义 value_type 的 C++ 映射
- jquery - jquery多条件验证
- javascript - HTML角度文件中的双花括号没有通过javascript显示数据,为什么?
- react-native-android - React Native:单击按钮下载带有 rn-fetch-blob 的 pdf 文件