欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

python进制转换

程序员文章站 2022-06-10 22:29:49
前言 这里主要介绍二进制、十进制、八进制、十六进制之间的相互转换,python中有专门的内置函数来实现进制转换,因此我们不需要自己写。 一、转二进制 >>> bin(10) '0b1010' >>> bin(0o12) '0b1010' >>> bin(0xa) '0b1010' 转二进制使用bin ......

前言

这里主要介绍二进制、十进制、八进制、十六进制之间的相互转换,python中有专门的内置函数来实现进制转换,因此我们不需要自己写。

一、转二进制

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

转二进制使用bin()函数,其参数默认为十进制数,八进制数需要加上0o标识,十六进制数需要加上0x标识。

二、转八进制

>>> oct(10)
'0o12'
>>> oct(0b1010)
'0o12'
>>> oct(0xa)
'0o12'

转八进制使用oct()函数,其参数默认为十进制数,二进制数需要加上0b标识,十六进制数需要加上0x标识。

三、转十六进制

>>> hex(10)
'0xa'
>>> hex(0b1010)
'0xa'
>>> hex(0o12)
'0xa'

转十六进制使用hex()函数,其参数默认为十进制数,二进制数需要加上0b标识,八进制数需要加上0o标识。

注意:以上进制转换的输出都是字符串类型,如若不需要前面的进制标识,只需进行字符串分割即可。例如:hex(10)[2:]。

四、转十进制

>>> int('0b1010', 2)
10
>>> int('1010', 2)
10
>>> int('12', 8)
10
>>> int('0o12', 8)
10
>>> int('0xa', 16)
10
>>> int('a', 16)
10

转十进制使用int()函数,其参数有两个,前者为字符串类型,表示需要转换成十进制的数字,后者为整型,表示转换前的数字为何种进制。由于这里有参数说明转换前的数字是哪种进制,所以0b、0o、0x这些进制标识可加可不加。