python 2进制,8进制,10进制,16进制转换

百科知识2025-04-273

       python里的进制转换并不复杂,大家只需要记住,目标进制为2进制时,就用bin(),目标进制是8进制的时候用oct(),目标进制是10进制的时候用int(),目标进制是16进制的时候用hex()

     

coding=utf-8

'''
Created on 2016-3-28

@author: Administrator
'''
class NumberType():
Binary = 1
Eigth = 2
Decimal = 3
Hex = 4

def transfer_number(str_number,oldtype,newtype):
number = ''
if oldtype == :
if newtype == :
number = oct(int(str_number, 2))

    if newtype == :
        number = int(str_number,2)

    if newtype == :
        number = hex(int(str_number,2))

if oldtype == :

    if newtype == :
        number = bin(int(str_number))
    if newtype == :
        number = oct(int(str_number))
    if newtype == :
        number = hex(int(str_number)) 

if oldtype == :
    if newtype == :
        number = bin(int(str_number, 8))
    if newtype == :
        number = int(str_number, 8)
    if newtype == :
        number = hex(int(str_number, 8))

if oldtype == :
    if newtype == :
        number = bin(int(str_number, 16))
    if newtype == :
        number = oct(int(str_number, 16))
    if newtype == :
        number = int(str_number, 16)

return str(number)

if name =='main':
print transfer_number('2054', , )