Python的进制转换和ASCLL转换你了解吗
时间:2022-10-02 12:51:59|栏目:Python代码|点击: 次
进制转换
进制之间的转换主要是利用十进制完成的。在进制转换的过程中,可以首先将相关进制转换为十进制的,再进行二次转换达到想要的效果。当然在进制转换中,也可以直接进行转换,不进行十进制的中转操作。
1. 十进制与二进制
1.1 十进制转二进制
使用bin()函数
bin(number, /)其它进制转二进制,返回整数的二进制表示形式
n = 120 print(bin(n)) # n 不改变 # 0b1111000
二进制以0b开头,若想去掉0b显示,可采用切片方法
print(bin(n)[2:]) # 1111000
1.2 二进制转十进制
使用int()函数
n = 120er = bin(n)print(int(er, 2)) # 120
2. 十进制与八进制
2.1 十进制转八进制
使用oct()函数
n = 120 print(oct(n)) # 0o170
2.2 八进制转十进制
使用int()函数
n = 120eight = oct(n)print(int(eight,8))# 120
3. 十进制与十六进制
3.1 十进制转十六进制
使用hex()函数
n = 120 print(hex(n)) # 0x78
3.2 十六进制转十进制
使用int()函数
n = 120 sixteen = hex(n) print(int(sixteen, 16)) # 120
4. 其它进制之间的相互转换
使用bin()、oct()、hex() 函数可以进行进制之间的直接转换,这时的进制的前缀必须带着。
例如:
二进制转八进制
1.二进制转十进制再转八进制
n = 120 er = bin(n) # er = '0b1111000' print(oct(int(er,2))) # 0o170
2.二进制直接转八进制
n = 120 er = bin(n) # er = '0b1111000' bb = oct(0b1111000) print(bb) # 0o170
ASCll转换
1. 整数转换为ASCLL字符
采用chr()函数,可以将位于【0, 255】之间的整数转换为ASCLL字符。
例如:
a = chr(65) # a = 'A'
2. 将ASCLL字符转换为整数
采用ord() 函数将一个ASCLL字符转换为对应的整数
b = ord('A') print(b) # 65
函数 | 说明 |
---|---|
bin() | 其它进制转成二进制,返回整数的二进制表示形式 |
oct() | 其它进制转成八进制,返回整数的八进制表示形式 |
hex() | 其它进制转成16进制,返回整数的十六进制表示形式 |
int(number, /) | 将其它进制转为十进制 |
chr() | 将整数转换为对应的ASCLL字符 |
ord() | 将一个ASCLL字符转换为对应的整数 |