在python中,各进制数值之间可进行转换,具体如下:

data16 = hex(16)  #十进制转十六进制
print(data16)     #显示:0x10
print(type(data16)) #显示:<class 'str'>
data10 = int(data16,16) #十六进制转十进制
print(data10)     #结果:16
print(type(data10)) #显示:<class 'int'>
print('-'*50)

data8 = oct(16)  #十进制转八进制
print(data8)     #显示:0o20
data10 = int(data8,8) #八进制转十进制
print(data10)     #结果:16
print('-'*50)

data2 = bin(16)  #十进制转二进制
print(data2)     #显示:0b10000
data10 = int(data2,2) #二进制转十进制
print(data10)     #结果:16
print('-'*50)

  其中,十进制int()、二进制bin()、八进制Oct()、十六进制hex()。

  注意:只有十进制int()转换后,结果<class:‘int’>;其它进制之间转换、或者十进制转换成其它进制后,结果<class:‘str'>。

  可以以十进制为过度,进行进制间转换,如:二进制——十进制——十六进制。也可以进制间直接转换。如下:

data2 = bin(0o16)  #八进制转二进制
print(data2)   #显示:0b1110
print(type(data2))  #显示: <class 'str'>
data8 = oct(0b110)  #二进制转八进制
print(data8)    #显示: 0o6
print(type(data8))  #显示: <class 'str'>

data16 = hex(0o16)  #八进制转十六进制
print(data16)   #显示: 0xe
print(type(data16))  #显示: <class 'str'>
data8 = oct(0x10)  #十六进制转八进制
print(data8)    #显示: 0o20
print(type(data8))  #显示: <class 'str'>

data2 = bin(0x16)  #十六进制转二进制
print(data2)   #显示:0b10110
print(type(data2))  #显示: <class 'str'>
data16 = hex(0b110)  #二进制转十六进制
print(data16)   #显示:0x6
print(type(data16))  #显示: <class 'str'>