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的Tornado框架中实现简单的在线代理的教程
May 02 Python
apache部署python程序出现503错误的解决方法
Jul 24 Python
Python+selenium实现截图图片并保存截取的图片
Jan 05 Python
python retrying模块的使用方法详解
Sep 25 Python
Python实现变声器功能(萝莉音御姐音)
Dec 05 Python
Python解释器及PyCharm工具安装过程
Feb 26 Python
Python编程快速上手——strip()函数的正则表达式实现方法分析
Feb 29 Python
Python描述符descriptor使用原理解析
Mar 21 Python
python 基于卡方值分箱算法的实现示例
Jul 17 Python
Python数据可视化实现漏斗图过程图解
Jul 20 Python
Expected conditions模块使用方法汇总代码解析
Aug 13 Python
python3访问字典里的值实例方法
Nov 18 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
PHP中for循环语句的几种变型
2007/03/16 PHP
三种php连接access数据库方法
2013/11/11 PHP
PHP使用适合阅读的格式显示文件大小的方法
2015/03/05 PHP
CI框架源码解读之利用Hook.php文件完成功能扩展的方法
2016/05/18 PHP
php微信公众号开发之音乐信息
2018/10/20 PHP
php设计模式之备忘模式分析【星际争霸游戏案例】
2020/03/24 PHP
javascript Zifa FormValid 0.1表单验证 代码打包下载
2007/06/08 Javascript
JavaScript修改css样式style
2008/04/15 Javascript
jquery.validate使用攻略 第五步 正则验证
2010/07/01 Javascript
通过jquery的$.getJSON做一个跨域ajax请求试验
2011/05/03 Javascript
jquery滚动条插件jScrollPane的使用介绍
2013/11/08 Javascript
网站内容禁止复制和粘贴、另存为的js代码
2014/02/26 Javascript
php+js实现倒计时功能
2014/06/02 Javascript
jQuery窗口、文档、网页各种高度的精确理解
2014/07/02 Javascript
javascript之with的使用(阿里云、淘宝使用代码分析)
2016/10/11 Javascript
JavaScript中清空数组的方法总结
2016/12/02 Javascript
详解angular element()方法使用
2017/04/08 Javascript
Vue响应式原理详解
2017/04/18 Javascript
Angular 4.x中表单Reactive Forms详解
2017/04/25 Javascript
JS中定位 position 的使用实例代码
2017/08/06 Javascript
详解keep-alive + vuex 让缓存的页面灵活起来
2019/04/19 Javascript
Vue 使用计时器实现跑马灯效果的实例代码
2019/07/11 Javascript
python 简易计算器程序,代码就几行
2009/08/29 Python
python函数缺省值与引用学习笔记分享
2013/02/10 Python
Windows下python2.7.8安装图文教程
2016/05/26 Python
Python实现批量修改图片格式和大小的方法【opencv库与PIL库】
2018/12/03 Python
Python3的unicode编码转换成中文的问题及解决方案
2019/12/10 Python
python爬虫开发之使用python爬虫库requests,urllib与今日头条搜索功能爬取搜索内容实例
2020/03/10 Python
python实现Pyecharts实现动态地图(Map、Geo)
2020/03/25 Python
Python tkinter之Bind(绑定事件)的使用示例
2021/02/05 Python
css3 旋转按钮 使用CSS3创建一个旋转可变色按钮
2012/12/31 HTML / CSS
戴尔美国官方折扣店:Dell Outlet
2018/02/13 全球购物
夫妻分居协议书范本
2014/11/28 职场文书
七一表彰大会简报
2015/07/20 职场文书
治理商业贿赂工作总结
2015/08/10 职场文书
详解nginx location指令
2022/01/18 Servers