Python实现byte转integer


Posted in Python onJune 03, 2021

摘自convert a string of bytes into an int (python) - Stack Overflow

需求:将形如'y\xcc\xa6\xbb'的byte字符串转化为integer

方法 1 导入struct包

import struct
struct.unpack("<L", "y\xcc\xa6\xbb")[0]

方法 2 python3.2及以上

若byte串采取大端法:

int.from_bytes(b'y\xcc\xa6\xbb', byteorder='big')

若采取小端法,则:

int.from_bytes(b'y\xcc\xa6\xbb', byteorder='little')

方法3 借助十六进制转换

大端法:

s = 'y\xcc\xa6\xbb'
num = int(s.encode('hex'), 16)

小端法:

int(''.join(reversed(s)).encode('hex'), 16)

方法4 使用array包

import array
integerValue = array.array("I", 'y\xcc\xa6\xbb')[0]

其中I用于表示大端或小端,且使用此方法要注意自己使用的python版本。

方法5 自己写函数实现

如:

sum(ord(c) << (i * 8) for i, c in enumerate('y\xcc\xa6\xbb'[::-1]))

又如:

def bytes2int( tb, order='big'):
    if order == 'big': seq=[0,1,2,3]
    elif order == 'little': seq=[3,2,1,0]
    i = 0
    for j in seq: i = (i<<8)+tb[j]
    return i

ps: CSDN的markdown编辑器好难用,写到页面底端就换行错乱,跳字符。

python int 转byte,byte转int

data_byte1 = int(1324).to_bytes(length=2, byteorder='big', signed=True)
#int(参数):参数代表要被转换的数字
#length=2:代表要转换成几个字节
#byteorder='big'代表高位在前,相反little
data_byte2 = int().from_bytes(data_byte1, byteorder='big', signed=True)
print(data_byte1) print(data_byte2)

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python2.x版本中maketrans()方法的使用介绍
May 19 Python
Python去除、替换字符串空格的处理方法
Apr 01 Python
cmd运行python文件时对结果进行保存的方法
May 16 Python
Python内存读写操作示例
Jul 18 Python
python实现的MySQL增删改查操作实例小结
Dec 19 Python
pip安装py_zipkin时提示的SSL问题对应
Dec 29 Python
Python求离散序列导数的示例
Jul 10 Python
纯python进行矩阵的相乘运算的方法示例
Jul 17 Python
python 字典 setdefault()和get()方法比较详解
Aug 07 Python
Python无头爬虫下载文件的实现
Apr 02 Python
keras-siamese用自己的数据集实现详解
Jun 10 Python
基于python制作简易版学生信息管理系统
Apr 20 Python
Python数据分析之绘图和可视化详解
Python数据分析之pandas读取数据
Jun 02 #Python
Python 如何实现文件自动去重
python状态机transitions库详解
Jun 02 #Python
python爬取某网站原图作为壁纸
Python爬虫之自动爬取某车之家各车销售数据
从np.random.normal()到正态分布的拟合操作
You might like
php缓存技术介绍
2006/11/25 PHP
PHP实现采集中国天气网未来7天天气
2014/10/15 PHP
细品javascript 寻址,闭包,对象模型和相关问题
2009/04/27 Javascript
JS定义网页表单提交(submit)的方法
2015/03/20 Javascript
js实现的星星评分功能函数
2015/12/09 Javascript
Eclipse编辑jsp、js文件时卡死现象的解决办法汇总
2016/02/02 Javascript
Vue.js实现一个SPA登录页面的过程【推荐】
2017/04/29 Javascript
Vue学习笔记进阶篇之vue-cli安装及介绍
2017/07/18 Javascript
Angular实现图片裁剪工具ngImgCrop实践
2017/08/17 Javascript
jQuery实现基本淡入淡出效果的方法详解
2018/09/05 jQuery
在vue项目中优雅的使用SVG的方法实例详解
2018/12/03 Javascript
详解微信图片防盗链“此图片来自微信公众平台 未经允许不得引用”的解决方案
2019/04/04 Javascript
vue实现密码显示与隐藏按钮的自定义组件功能
2019/04/23 Javascript
使用JavaScript获取Django模板指定键值数据
2020/05/27 Javascript
Vue两种组件类型:递归组件和动态组件的用法
2020/08/06 Javascript
[49:31]DOTA2-DPC中国联赛 正赛 Elephant vs LBZS BO3 第二场 1月29日
2021/03/11 DOTA
Python中的startswith和endswith函数使用实例
2014/08/25 Python
Python编程生成随机用户名及密码的方法示例
2017/05/05 Python
分享Pycharm中一些不为人知的技巧
2018/04/03 Python
python提取包含关键字的整行数据方法
2018/12/11 Python
Python for循环及基础用法详解
2019/11/08 Python
pandas读取csv文件提示不存在的解决方法及原因分析
2020/04/21 Python
CSS3中31种选择器使用方法教程
2013/12/05 HTML / CSS
CSS3常用的几种颜色渐变模式总结
2016/11/18 HTML / CSS
Html5 Canvas 实现一个“刮刮乐”游戏
2019/09/05 HTML / CSS
六道php面试题附答案
2014/06/05 面试题
写一个用矩形法求定积分的通用函数
2012/11/08 面试题
测量工程专业求职信
2014/02/24 职场文书
小学生爱国演讲稿
2014/04/25 职场文书
做人民满意的公务员活动方案
2014/08/25 职场文书
2014年教师党员自我评价范文
2014/09/22 职场文书
个人查摆问题整改措施
2014/10/04 职场文书
放弃遗产继承公证书
2015/01/26 职场文书
博士给导师的自荐信
2015/03/06 职场文书
优化经济发展环境工作总结
2015/08/11 职场文书
python中sqllite插入numpy数组到数据库的实现方法
2021/06/21 Python