python很多数据都是bytes格式的,经常需要转换成int或者short,笔者实际项目有需求,这里就做个笔记吧。
实例一:
bytes转short:(无符号类型)
import struct
barray = b'\x00\xfe\x4b\x00\x4b\x00'
count = len(barray)/2
integers = struct.unpack('H'*int(count), barray)
注意,这里面的count的长度要是偶数 ,不然会报错误.
转成有符号的,只需要把H改成h即可.
实例二:
bytes转int:
import struct barray = b'\x00\xfe\x4b\x00\x4b\x00\x22\x44' count = len(barray)/4 integers = struct.unpack('i'*int(count), barray)
注意,这里面的count的长度要是四的倍数 ,不然会报错误.
转成无符号的,只需要把i改成I即可.
参考信息:
1 https://stackoverflow.com/questions/45187101/converting-bytearray-to-short-int-in-python
作者:虚生 出处:https://www.cnblogs.com/dylancao/ 以音频和传感器算法为核心的智能可穿戴产品解决方案提供商 ,提供可穿戴智能软硬件解决方案的设计,开发和咨询服务。 勾搭热线:邮箱:1173496664@qq.com weixin:18019245820 市场技术对接群:347609188 |