Python 各种进制转换

#coding=gbk
var=input("请输入十六进制数:")
b=bin(int(var,16))
print(b[2:])

详细请参考python自带int函数、bin函数用法

参考网址:https://docs.python.org/3/library/functions.html?highlight=int#bin

class int(x, base=10)
bin(x)

十六进制 到 十进制

使用 int() 函数 ,第一个参数是字符串 '0Xff' ,第二个参数是说明,这个字符串是几进制的数。  转化的结果是一个十进制数。

>>> int('0xf',16) 
15

二进制 到 十进制

>>> int('10100111110',2)      
1342

八进制 到 十进制

>>> int('17',8)    
15

其实可以看到,不管 几进制数 转换成 十进制数 ,都是用 int()  函数 。之后后面的 第二个参数 写清楚 前面字符串 是 几进制数就可以 。注意一定要合法。 比如2进制数就不能出现2这样的字符。

----------------------------------------------------------------------------------------------------------------------------

十进制 转 十六进制

>>> hex(1033)
'0x409'

 二进制 转 十六进制

就是 二进制先转成 十进制, 再转成 十六进制。

>>> hex(int('101010',2))
'0x2a'

八进制到 十六进制

就是 八进制先转成 十进制, 再转成 十六进制。

>>> hex(int('17',8))
'0xf'

----------------------------------------------------------------------------------------------------------------------------

十进制转二进制

>>> bin(10)
'0b1010'

十六进制转 二进制

十六进制->十进制->二进制

>>> bin(int('ff',16))
'0b11111111'

八进制 到 二进制

八进制先到十进制,再到二进制

>>> bin(int('17',8))
'0b1111'

 ----------------------------------------------------------------------------------------------------------------------------

二进制 到 八进制

>>> oct(0b1010)        
'012'

十进制到八进制

>>> oct(11)
'013'

十六进制到八进制

>>> oct(0xf) 
'017'

可见oct 函数 可将 任意进制的数 转换成 8进制的。

原文地址:https://www.cnblogs.com/fieldtianye/p/8277027.html