ITPub博客

首页 > 应用开发 > IT综合 > python二进制八进制十进制十六进制转换代码

python二进制八进制十进制十六进制转换代码

原创 IT综合 作者:qiancheng11115 时间:2015-04-05 17:04:16 0 删除 编辑
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 inrange(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))
部分代码来自CODEGO.NET.经验证可用.

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/30187570/viewspace-1500931/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2015-04-02

  • 博文量
    2
  • 访问量
    5632