使用Python内置的模块与函数进行不同进制的数的转换


Posted in Python onMarch 12, 2016

binascii 模块:
它包含一个把二进制数值转换成十六进制的函数,同样也可以反过来转。 #binary_value是二进制数值不是字符串,也不是int型的1010

binascii.b2a_hex(binary_value) ##binary_value 一般读二进制文件可以得到 
 
>>'89' <type str>

python自带的builtin函数:
bin(num)   十进制数值 ===》二进制字符串

bin(10) 
 
>> '0b1010' <type, str>

oct(num)  十进制数值 ===》八进制字符串

oct(10) 
 
>>'012' <type, str>

hex(num) 十进制数值 ===》十六进制字符串

hex(20) 
 
>>'0x14' <type, str>

int(str, base) 其它进制字符串 ===》十进制的数值,其中base代表str具体是属于哪个进制,如果是2则表示str是二进制, 默认base为十进制

int('20') 
>>20 <type, int> 
int('10', 2) 
>>2 <type, int> 
int('10', 8) 
>>8 <type, int> 
int('20', 10) 
>>20 <type, int> 
int('20',16) 
>>32 <type, int>

字符与数字转换函数:
chr(int)   整型 转 字符

chr(65) 
 
>>'A', <type, str>

ord(chr) 字符 转 整型

ord('a') 
 
>>97, <type, int>

最后,给一个读取图片文件二进制内容的示例:

#!/usr/bin/env python  
#encoding: utf-8 
import binascii  
 
fh = open(r'C:\Temp\img\2012517165556.png', 'rb') 
a = fh.read() 
#print 'raw: ',`a`,type(a) 
hexstr = binascii.b2a_hex(a) #得到一个16进制的数 
#print 'hex: ',hexstr, type(hexstr) 
bsstr = bin(int(hexstr,16))[2:] 
print 'bin: ',bsstr, type(bsstr)

1010刷屏的效果,是不是有点黑客帝国的赶脚啊,呵呵

使用Python内置的模块与函数进行不同进制的数的转换

Python 相关文章推荐
python中global与nonlocal比较
Nov 21 Python
Python列表list内建函数用法实例分析【insert、remove、index、pop等】
Jul 24 Python
用matplotlib画等高线图详解
Dec 14 Python
Python中if elif else及缩进的使用简述
May 31 Python
使用Python读取二进制文件的实例讲解
Jul 09 Python
解决python中无法自动补全代码的问题
Dec 04 Python
对python指数、幂数拟合curve_fit详解
Dec 29 Python
利用pyuic5将ui文件转换为py文件的方法
Jun 19 Python
详解利用python+opencv识别图片中的圆形(霍夫变换)
Jul 01 Python
Python列表与元组的异同详解
Jul 02 Python
python编写猜数字小游戏
Oct 06 Python
Jupyter notebook如何实现指定浏览器打开
May 13 Python
Python语言的面相对象编程方式初步学习
Mar 12 #Python
举例讲解Python中的list列表数据结构用法
Mar 12 #Python
Python中的if、else、elif语句用法简明讲解
Mar 11 #Python
使用Python读写文本文件及编写简单的文本编辑器
Mar 11 #Python
简单讲解Python中的数字类型及基本的数学计算
Mar 11 #Python
详解Python中的变量及其命名和打印
Mar 11 #Python
Python基本语法经典教程
Mar 11 #Python
You might like
默默简单的写了一个模板引擎
2007/01/02 PHP
php获取QQ头像并显示的方法
2014/12/23 PHP
PHP和Shell实现检查SAMBA与NFS Server是否存在
2015/01/07 PHP
在Mac OS上自行编译安装Apache服务器和PHP解释器
2015/12/24 PHP
jQuery基础语法实例入门
2014/12/23 Javascript
最丑的时钟效果!js canvas时钟制作方法
2016/08/15 Javascript
JavaScript中Number对象的toFixed() 方法详解
2016/09/02 Javascript
原生JS改变透明度实现轮播效果
2017/03/24 Javascript
关于vue.js v-bind 的一些理解和思考
2017/06/06 Javascript
vue项目中axios使用详解
2018/02/07 Javascript
axios全局注册,设置token,以及全局设置url请求网段的方法
2018/09/25 Javascript
Angular2使用SVG自定义图表(条形图、折线图)组件示例
2019/05/10 Javascript
解决Vue 给mapState中定义的属性赋值报错的问题
2020/06/22 Javascript
js实现随机点名器精简版
2020/06/29 Javascript
原生JS实现京东查看商品点击放大
2020/12/21 Javascript
python操作 hbase 数据的方法
2016/12/18 Python
使用python调用zxing库生成二维码图片详解
2017/01/10 Python
Python 通过pip安装Django详细介绍
2017/04/28 Python
使用paramiko远程执行命令、下发文件的实例
2017/10/01 Python
python数据类型判断type与isinstance的区别实例解析
2017/10/31 Python
Python 获得命令行参数的方法(推荐)
2018/01/24 Python
在cmd中查看python的安装路径方法
2019/07/03 Python
postman模拟访问具有Session的post请求方法
2019/07/15 Python
python中的&amp;&amp;及||的实现示例
2019/08/07 Python
python打造爬虫代理池过程解析
2019/08/15 Python
python实现超市商品销售管理系统
2019/11/22 Python
Django在Model保存前记录日志实例
2020/05/14 Python
搭建pypi私有仓库实现过程详解
2020/11/25 Python
python 制作简单的音乐播放器
2020/11/25 Python
美国知名的网上鞋类及相关服装零售商:Shoes.com
2017/05/06 全球购物
全球最大的中文旅行网站:去哪儿网
2017/11/16 全球购物
世界上最伟大的马产品:Equiderma
2020/01/07 全球购物
高中生第一学年自我鉴定2015
2014/09/28 职场文书
开会通知短信大全
2015/04/20 职场文书
2015年高二班主任工作总结
2015/05/25 职场文书
MySQL中连接查询和子查询的问题
2021/09/04 MySQL