Python不同进制之间的转换

不同的进制


二进制    0b101 

     以数字0和字母b打头的表示二进制数 如果出现大于等于2的数 会抛出SyntaxError异常 

八进制    0711 

     以数字0打头的数字表示八进制数 如果出现大于等于8的数 会抛出SyntaxError异常 

十进制    123 

     正常显示 不能出现字母 

十六进制  0x15 

     以数字0和字幕x打头的表示十六进制数 可以出现0-9和abcdef或ABCDEF出现其他数值会抛出SyntaxError异常


python 2.6以后内置函数


#10进制转为2进制

>>> bin(10)
'0b1010'

#2进制转为10进制

>>> int("1001",2)
9

#10进制转为16进制

>>> hex(10)
'0xa'

#16进制到10进制

>>> int('ff', 16)
255
>>> int('0xab', 16)
171

#十进制转为八进制

>>print("%o" % 10)
>>12

#16进制到2进制

>>> bin(0xa)
'0b1010'
>>>

#10进制到8进制

>>> oct(8)
'010'

#2进制到16进制

>>> hex(0b1001)
'0x9'


另外,在交互式解释器环境中.python会自动的将不同的进制自动转换为十进制,进行运算.

>>> 0b101 + 0711 + 123 + 0x15 
606


上一篇:Python中运算符"=="和"is"的差别分析
下一篇:Python 四种数值类型(int,long,float,complex)区别及转换

PythonTab微信公众号:

Python技术交流互助群 ( 请勿加多个群 ):

群1: 87464755

群2: 333646237

群3: 318130924

群4: 385100854