使用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 相关文章推荐
linux下安装easy_install的方法
Feb 10 Python
Python读csv文件去掉一列后再写入新的文件实例
Dec 28 Python
使用python将大量数据导出到Excel中的小技巧分享
Jun 14 Python
virtualenv 指定 python 解释器的版本方法
Oct 25 Python
python实现给scatter设置颜色渐变条colorbar的方法
Dec 13 Python
详解安装mitmproxy以及遇到的坑和简单用法
Jan 21 Python
用Python中的turtle模块画图两只小羊方法
Apr 09 Python
python二进制文件的转译详解
Jul 03 Python
Django在pycharm下修改默认启动端口的方法
Jul 26 Python
TensorFlow基本的常量、变量和运算操作详解
Feb 03 Python
OpenCV-Python实现图像平滑处理操作
Jun 08 Python
Python爬取某拍短视频
Jun 11 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
基于mysql的论坛(7)
2006/10/09 PHP
PHP的异常处理类Exception的使用及说明
2012/06/13 PHP
浅谈php+phpStorm+xdebug配置方法
2015/09/17 PHP
CL vs ForZe BO5 第四场 2.13
2021/03/10 DOTA
服务器端的JavaScript脚本 Node.js 使用入门
2012/03/07 Javascript
使用javascript控制cookie显示和隐藏背景图
2014/02/12 Javascript
jquery中的常用事件bind、hover、toggle等示例介绍
2014/07/21 Javascript
jQuery往textarea中光标所在位置插入文本的方法
2015/06/26 Javascript
jQuery模拟原生态App上拉刷新下拉加载更多页面及原理
2015/08/10 Javascript
js实现跨域的4种实用方法原理分析
2015/10/29 Javascript
jquery实现横向图片轮播特效代码分享
2015/11/19 Javascript
JavaScript使用DeviceOne开发实战(三)仿微信应用
2015/12/02 Javascript
js实现文字超出部分用省略号代替实例代码
2016/09/01 Javascript
ES6中的箭头函数实例详解
2017/04/06 Javascript
JavaScript实现简单动态进度条效果
2018/04/06 Javascript
WebSocket的简单介绍及应用
2019/05/23 Javascript
jQuery实现每日秒杀商品倒计时功能
2019/09/06 jQuery
微信小程序实现点击按钮后修改颜色
2019/12/05 Javascript
[03:57]DOTA2英雄梦之声_第03期_幻影刺客
2014/06/21 DOTA
Python的Flask框架中使用Flask-SQLAlchemy管理数据库的教程
2016/06/14 Python
使用Python对MySQL数据操作
2017/04/06 Python
Python编程判断这天是这一年第几天的方法示例
2017/04/18 Python
Python实现求笛卡尔乘积的方法
2017/09/16 Python
scrapy spider的几种爬取方式实例代码
2018/01/25 Python
matlab灰度图像调整及imadjust函数的用法详解
2020/02/27 Python
简单介绍HTML5中的文件导入
2015/05/08 HTML / CSS
西班牙著名的珠宝首饰品牌:P D PAOLA
2018/09/15 全球购物
Android interview questions
2016/12/25 面试题
2014报到证办理个人委托书
2014/10/08 职场文书
自主招生推荐信格式模板
2015/03/24 职场文书
2015年项目经理工作总结
2015/04/30 职场文书
怎样写工作总结啊!
2019/06/18 职场文书
预备党员入党思想汇报(范文)
2019/08/14 职场文书
如何使用vue3打造一个物料库
2021/05/08 Vue.js
Python超详细分步解析随机漫步
2022/03/17 Python
Python OpenCV超详细讲解读取图像视频和网络摄像头
2022/04/02 Python