Python中不同进制互相转换(二进制、八进制、十进制和十六进制)


Posted in Python onApril 05, 2015

在我的印象里面进制互相转换确实是很常见的问题,所以在Python中,自然也少不了把下面这些代码收为util。

这是从网上搜索的一篇也的还可以的Python进制转换,经过验证可以使用。下面贴出它的实现代码:

#!/usr/bin/env python 
# -*- coding: utf-8 -*- 
# 2/10/16 base trans. wrote by srcdog on 20th, April, 2009 
# ld elements in base 2, 10, 16. 
 
import os,sys 
 
# global definition 
# base = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F] 
base = [str(x) for x in range(10)] + [ chr(x) for x in range(ord('A'),ord('A')+6)] 
 
# bin2dec 
# 二进制 to 十进制: int(str,n=10)  
def bin2dec(string_num): 
  return str(int(string_num, 2)) 
 
# hex2dec 
# 十六进制 to 十进制 
def hex2dec(string_num): 
  return str(int(string_num.upper(), 16)) 
 
# dec2bin 
# 十进制 to 二进制: bin()  
def dec2bin(string_num): 
  num = int(string_num) 
  mid = [] 
  while True: 
    if num == 0: break 
    num,rem = divmod(num, 2) 
    mid.append(base[rem]) 
 
  return ''.join([str(x) for x in mid[::-1]]) 
 
# dec2hex 
# 十进制 to 八进制: oct()  
# 十进制 to 十六进制: hex()  
def dec2hex(string_num): 
  num = int(string_num) 
  mid = [] 
  while True: 
    if num == 0: break 
    num,rem = divmod(num, 16) 
    mid.append(base[rem]) 
 
  return ''.join([str(x) for x in mid[::-1]]) 
 
# hex2tobin 
# 十六进制 to 二进制: bin(int(str,16))  
def hex2bin(string_num): 
  return dec2bin(hex2dec(string_num.upper())) 
 
# bin2hex 
# 二进制 to 十六进制: hex(int(str,2))  
def bin2hex(string_num): 
  return dec2hex(bin2dec(string_num))
Python 相关文章推荐
在Python的列表中利用remove()方法删除元素的教程
May 21 Python
利用Python批量压缩png方法实例(支持过滤个别文件与文件夹)
Jul 30 Python
pycharm下打开、执行并调试scrapy爬虫程序的方法
Nov 29 Python
numpy排序与集合运算用法示例
Dec 15 Python
Python Selenium Cookie 绕过验证码实现登录示例代码
Apr 10 Python
python 根据时间来生成唯一的字符串方法
Jan 14 Python
python 处理数字,把大于上限的数字置零实现方法
Jan 28 Python
python3实现用turtle模块画一棵随机樱花树
Nov 21 Python
Python通过VGG16模型实现图像风格转换操作详解
Jan 16 Python
python爬虫开发之Beautiful Soup模块从安装到详细使用方法与实例
Mar 09 Python
Python restful框架接口开发实现
Apr 13 Python
Python3.8安装Pygame教程步骤详解
Aug 14 Python
Python中使用第三方库xlrd来写入Excel文件示例
Apr 05 #Python
Python中使用第三方库xlrd来读取Excel示例
Apr 05 #Python
Python中使用第三方库xlutils来追加写入Excel文件示例
Apr 05 #Python
Python下使用Psyco模块优化运行速度
Apr 05 #Python
Python中使用tarfile压缩、解压tar归档文件示例
Apr 05 #Python
低版本中Python除法运算小技巧
Apr 05 #Python
Python中使用PDB库调试程序
Apr 05 #Python
You might like
phpMyAdmin2.11.6安装配置方法
2008/08/24 PHP
ThinkPHP CURD方法之field方法详解
2014/06/18 PHP
PHP中strcmp()和strcasecmp()函数字符串比较用法分析
2016/01/07 PHP
用jquery和json从后台获得数据集的代码
2011/11/07 Javascript
javascript实现焦点滚动图效果 具体方法
2013/06/24 Javascript
js实现简单的省市县三级联动效果实例
2016/02/18 Javascript
JS原型、原型链深入理解
2016/02/27 Javascript
input框中的name和id的区别
2016/11/16 Javascript
网站发布后Bootstrap框架引用woff字体无法正常显示的解决方法
2016/11/24 Javascript
实例分析Array.from(arr)与[...arr]到底有何不同
2019/04/09 Javascript
使用vue-cli3新建一个项目并写好基本配置(推荐)
2019/04/24 Javascript
jqGrid表格底部汇总、合计行footerrow处理
2019/08/21 Javascript
NodeJs crypto加密制作token的实现代码
2019/11/15 NodeJs
Vue生命周期activated之返回上一页不重新请求数据操作
2020/07/26 Javascript
[08:44]和酒神一起战斗 DOTA2教你做大人
2014/03/27 DOTA
python中查找excel某一列的重复数据 剔除之后打印
2013/02/10 Python
Win7上搭建Cocos2d-x 3.1.1开发环境
2014/07/03 Python
Python装饰器使用示例及实际应用例子
2015/03/06 Python
python获取目录下所有文件的方法
2015/06/01 Python
python中Matplotlib实现绘制3D图的示例代码
2017/09/04 Python
Python使用Tkinter实现机器人走迷宫
2018/01/22 Python
PyQt5每天必学之带有标签的复选框
2018/04/19 Python
python使用Turtle库绘制动态钟表
2018/11/19 Python
python3 实现的对象与json相互转换操作示例
2019/08/17 Python
Python:二维列表下标互换方式(矩阵转置)
2019/12/02 Python
如何用Python 实现全连接神经网络(Multi-layer Perceptron)
2020/10/15 Python
详解HTML5布局和HTML5标签
2020/10/26 HTML / CSS
Pure Collection美国官网:来自英国羊绒专家的奢华羊绒
2017/11/19 全球购物
简述网络文件系统NFS,并说明其作用
2016/10/19 面试题
干部培训自我鉴定
2014/01/22 职场文书
年会搞笑主持词串词
2014/03/24 职场文书
2015元旦文艺汇演主持稿(开场白+结束语)
2014/12/14 职场文书
2015教师个人师德工作总结
2015/10/23 职场文书
2016教师给学生的毕业寄语
2015/12/04 职场文书
教你怎么用Python监控愉客行车程
2021/04/29 Python
SQLServer中JSON文档型数据的查询问题解决
2021/06/27 SQL Server