使用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中itertools模块用法详解
Sep 25 Python
Python lambda和Python def区别分析
Nov 30 Python
python timestamp和datetime之间转换详解
Dec 11 Python
Python实现决策树C4.5算法的示例
May 30 Python
python计算日期之间的放假日期
Jun 05 Python
python tkinter界面居中显示的方法
Oct 11 Python
python进行文件对比的方法
Dec 24 Python
Python3 执行系统命令并获取实时回显功能
Jul 09 Python
Python 日期的转换及计算的具体使用详解
Jan 16 Python
如何通过Django使用本地css/js文件
Jan 20 Python
python pandas.DataFrame.loc函数使用详解
Mar 26 Python
Python实现自动玩连连看的脚本分享
Apr 04 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
PHP邮件专题
2006/10/09 PHP
Yii2框架BootStrap样式的深入理解
2016/11/07 PHP
PHP屏蔽关键字实现方法
2016/11/17 PHP
PHP中非常有用却鲜有人知的函数集锦
2019/08/17 PHP
JavaScript 浏览器对象模型BOM使用介绍
2015/04/13 Javascript
在AngularJS中使用AJAX的方法
2015/06/17 Javascript
JavaScript实现倒计时代码段Item1(非常实用)
2015/11/03 Javascript
javascript作用域链(Scope Chain)用法实例解析
2015/11/30 Javascript
浅析AngularJS Filter用法
2015/12/28 Javascript
javascript先序遍历DOM树的方法
2016/02/27 Javascript
分分钟玩转Vue.js组件
2016/10/25 Javascript
Bootstrap 填充Json数据的实例代码
2017/01/11 Javascript
JS去除字符串中空格的方法
2017/02/14 Javascript
详解使用vue-router进行页面切换时滚动条位置与滚动监听事件
2017/03/08 Javascript
Vuex之理解Store的用法
2017/04/19 Javascript
vue2中使用sass并配置全局的sass样式变量的方法
2018/09/04 Javascript
在vue中使用vue-echarts-v3的实例代码
2018/09/13 Javascript
微信小程序中使用echarts的实现方法
2019/04/24 Javascript
Node.JS枚举统计当前文件夹和子目录下所有代码文件行数
2019/08/23 Javascript
[02:03]风行者至宝清风环佩外观展示
2020/09/05 DOTA
Python跳出循环语句continue与break的区别
2014/08/25 Python
Python动态加载模块的3种方法
2014/11/22 Python
PyTorch CNN实战之MNIST手写数字识别示例
2018/05/29 Python
对python 数据处理中的LabelEncoder 和 OneHotEncoder详解
2018/07/11 Python
Python正则表达式实现简易计算器功能示例
2019/05/07 Python
利用Python校准本地时间的方法教程
2019/10/31 Python
利用python进行文件操作
2020/12/04 Python
详解HTML5表单新增属性
2016/12/21 HTML / CSS
大学毕业感言
2014/01/10 职场文书
企业管理培训感言
2014/01/27 职场文书
四风剖析查摆对照检查材料思想汇报
2014/09/24 职场文书
乡镇务虚会发言材料
2014/10/20 职场文书
中秋节慰问信
2015/02/15 职场文书
外贸采购员岗位职责
2015/04/03 职场文书
2015年高校教师个人工作总结
2015/05/25 职场文书
Sql Server 行数据的某列值想作为字段列显示的方法
2022/04/20 SQL Server