Fork me on GitHub

随笔 - 997  文章 - 5  评论 - 181  阅读 - 300万 

 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即可.

 

参考信息:

 

https://stackoverflow.com/questions/45187101/converting-bytearray-to-short-int-in-python

posted on   虚生  阅读(6370)  评论(0编辑  收藏  举报
编辑推荐:
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
阅读排行:
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
点击右上角即可分享
微信分享提示