Python基础:各种进制间的相互转换

您所在的位置:网站首页 十进制二进制相互转换 Python基础:各种进制间的相互转换

Python基础:各种进制间的相互转换

#Python基础:各种进制间的相互转换| 来源: 网络整理| 查看: 265

在Python中,进制的转换通过Python的内置函数即可实现。下文所说的其他进制指的是二进制、十六进制和八 进制。

一、 相关函数:

str():字符串转换函数 bin():将一个整数转换成2进制字符串 hex():将一个整数转换成16进制字符串 oct():将一个整数转换成8进制字符串

二、十进制转换为其它进制

代码如下:

# 十进制转换到其他进制 int = 10 hex = hex(int) bin = bin(int) oct = oct(int) print('十进制数是:',int) print(type(int),end='\n\n') # 十进制数是: 10 # print('十六进制数是:',hex) print(type(hex),end='\n\n') # 十六进制数是: 0xa # print('二进制数是:',bin) print(type(bin),end='\n\n') # 二进制数是: 0b1010 # print('八进制数是:',oct) print(type(oct),end='\n\n') # 八进制数是: 0o12 #

注:运用Python内置函数从十进制转换为其他进制,其输出的类型均为str类型,且转换后的值中,hex(),bin(),oct()会自动加上0x,0b,0o前缀。

三、其他进制转换为十进制

其他进制转换为十进制,是上述过程的相反实现。

# 其他进制转换为十进制 a = 1010 #二进制数1010 str = str(a) print('十进制是:',int(str,2)) print(type(int(str,2))) # 十进制是: 10 # b = 25 #八进制数25 str = str(b) print('十进制数是:',int(str,8)) print(type(int(str,8))) # 十进制数是: 21 # c = 25 #十六进制数25 str = str(c) print('十进制数是:',int(str,16)) print(type(int(str,16))) # 十进制数是: 37 #

总结:其他进制转换为十进制数,需要借助str()函数,即首先利用str()函数将数字转化为字符串类型,然后再进行转换;转换时,待转数字不应该带有0b,0x,0o前缀,否则转换后将发生错误。

四、其他进制间的相互转换

二进制、八进制、十六进制间的转换可以利用十进制作为桥梁,转换为十进制后再将其转换为其他进制。以二进制转换为十六进制为例,其他进制转换与此相类似:

# 二进制转换为十六进制 num = 1010 #二进制数1010 str = str(num) #首先转换为str类型 int = int(str,2) #然后转换为十进制数 print('转换的十进制数是:',int,end='\n\n') hex = hex(int) #将十进制数转换为十六进制数 print('转换的十六进制数是:',hex) # 转换的十进制数是: 10 # 转换的十六进制数是: 0xa

下图为进制转换关系表: 在这里插入图片描述



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3