Python零基础教程:内置函数之进制转换函数

1、bin(),oct(),hex()进制转换函数(带前缀)

使用bin(),oct(),hex()进行转换的时候的返回值均为字符串,且带有0b, 0o, 0x前缀.

十进制转换为二进制

>>> bin(10)
'0b1010'

十进制转为八进制

>>> oct(12)
'014'

十进制转为十六进制

>>> hex(12)
'0xc'

2、’{0:b/o/x}’.format()进制转换函数(不带前缀)

十进制转换为二进制

>>>'{0:b}'.format(10)
'1010'

十进制转为八进制

>>> '{0:o}'.format(12)
'14'

十进制转为十六进制

>>> '{0:x}'.format(12)
'c'

注意:hex函数比格式化字符串函数format慢,不推荐使用.

3、int(’’,2/8/16)转化为十进制函数(不带前缀)

二进制转为十进制

'''
学习中遇到问题没人解答?小编创建了一个Python学习交流QQ群:531509025
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
>>> int('1010',2)
10

八进制转为十进制

>>> int('014', 8)
12

十六进制转十进制

>>> int('0xc',16)
12

4、’{0:d}’.format()进制转换为十进制函数

二进制转十进制

>>> '{0:d}'.format(0b11)
'3'

八进制转十进制

>>> '{0:d}'.format(0o14)
'12'

十六进制转十进制

>>> '{0:d}'.format(0x1f)
'31'

5、eval()进制转为十进制函数

二进制转十进制

>>> eval('0b11')
'3'

八进制转十进制

'''
学习中遇到问题没人解答?小编创建了一个Python学习交流QQ群:531509025
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
>>> eval('0o14')
'12'

十六进制转十进制

>>> eval('0x1f')
'31'

注意:eval函数比int函数慢,不推荐使用
二进制, 十六进制以及八进制之间的转换,可以借助十进制这个中间值,即先转十进制再转其他的进制,也可以直接使用函数进制转换.

#借助十进制
>>> bin(int('fc',16))
'0b11111100'
#利用函数直接转
>>> bin(0xa)
'0b1010'
>>> oct(0xa)
'012'
>>> hex(10)
'0xa'
posted @ 2022-10-07 20:27  I'm_江河湖海  阅读(21)  评论(0编辑  收藏  举报