使用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技能之数据导出excel的实例代码
Aug 11 Python
Python编程实现蚁群算法详解
Nov 13 Python
python 获取字符串MD5值方法
May 29 Python
将Django项目部署到CentOs服务器中
Oct 18 Python
python redis连接 有序集合去重的代码
Aug 04 Python
Python学习笔记之lambda表达式用法详解
Aug 08 Python
Python Socketserver实现FTP文件上传下载代码实例
Mar 27 Python
Django之富文本(获取内容,设置内容方式)
May 21 Python
python seaborn heatmap可视化相关性矩阵实例
Jun 03 Python
python openCV实现摄像头获取人脸图片
Aug 20 Python
详解pycharm配置python解释器的问题
Oct 15 Python
python help函数实例用法
Dec 06 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
PHP5/ZendEngine2的改进
2006/10/09 PHP
php smarty模版引擎中的缓存应用
2009/12/11 PHP
codeigniter使用技巧批量插入数据实例方法分享
2013/12/31 PHP
PHP中redis的用法深入解析
2014/02/20 PHP
分享一个php 的异常处理程序
2014/06/22 PHP
Symfony2函数用法实例分析
2016/03/18 PHP
yii2局部关闭(开启)csrf的验证的实例代码
2017/07/10 PHP
laravel 框架结合关联查询 when()用法分析
2019/11/22 PHP
javascript引导程序
2008/10/26 Javascript
jquery 读取页面load get post ajax 四种方式代码写法
2011/04/02 Javascript
js通过更改按钮的显示样式实现按钮的滑动效果
2014/04/23 Javascript
js实现左侧网页tab滑动门效果代码
2015/09/06 Javascript
JS+CSS实现电子商务网站导航模板效果代码
2015/09/10 Javascript
nodejs个人博客开发第六步 数据分页
2017/04/12 NodeJs
node.js中debug模块的简单介绍与使用
2017/04/25 Javascript
微信小程序switch组件使用详解
2018/01/31 Javascript
javascript闭包的使用之按钮切换功能
2018/08/30 Javascript
vue watch关于对象内的属性监听
2019/04/22 Javascript
js加减乘除精确运算方法实例代码
2021/01/17 Javascript
[04:29]DOTA2亚洲邀请赛小组赛第一日 TOP10精彩集锦
2015/02/01 DOTA
简单讲解Python中的数字类型及基本的数学计算
2016/03/11 Python
python3使用flask编写注册post接口的方法
2018/12/28 Python
详解Python 解压缩文件
2019/04/09 Python
pycharm创建一个python包方法图解
2019/04/10 Python
python买卖股票的最佳时机(基于贪心/蛮力算法)
2019/07/05 Python
为什么说python适合写爬虫
2020/06/11 Python
Python系统公网私网流量监控实现流程
2020/11/23 Python
adidas马来西亚官网:adidas MY
2020/09/12 全球购物
介绍一下MD5加密算法
2016/11/12 面试题
应聘收银员个人的求职信
2013/11/30 职场文书
大学生党课思想汇报
2013/12/29 职场文书
建设投标担保书
2014/05/13 职场文书
优秀应届生求职信
2014/06/16 职场文书
入党介绍人考察意见
2015/06/01 职场文书
详解Laravel服务容器的优势
2021/05/29 PHP
mysql使用 not int 子查询隐含陷阱
2022/04/12 MySQL