Python hex()十六进制转换

Python hex() 函数用于将整数转换为以“0x”为前缀的小写十六进制字符串:

 
print(hex(255))  # decimal十进制
print(hex(0b111))  # binary二进制
print(hex(0o77))  # octal八进制
print(hex(0XFF))  # hexadecimal十六进制

输出:

 
0xff
0x7
0x3f
0xff

十六进制 到 十进制

使用 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进制的。

你可能感兴趣的:(工具,python,开发语言)