Python进制转换与ASCII码处理详解
本文详细介绍Python中进制转换与ASCII码处理的核心方法。通过bin、oct、hex及int函数实现各进制间转换,并利用chr与ord函数完成整数与ASCII字符的双向转换,涵盖直接转换与十进制中转两种路径。
进制转换
进制间的转换主要依托十进制作为中间桥梁。在转换过程中,可以先将其他进制数转换为十进制,再进一步转换为目标进制。当然,Python也支持跳过十进制中转,直接在不同进制间进行转换。
1. 十进制与二进制
1.1 十进制转二进制
使用bin()函数
bin(number, /)用于将其他进制转换为二进制,返回整数的二进制表示形式
n = 120
print(bin(n)) # n 不改变
# 0b1111000
二进制字符串以0b开头,若需去除该前缀,可采用切片方法
print(bin(n)[2:])
# 1111000
1.2 二进制转十进制
使用int()函数
n = 120er = bin(n)print(int(er, 2)) # 1202. 十进制与八进制
2.1 十进制转八进制
使用oct()函数
n = 120
print(oct(n))
# 0o170
2.2 八进制转十进制
使用int()函数
n = 120eight = oct(n)print(int(eight,8))# 1203. 十进制与十六进制
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字符转换为对应的整数 |
总结
本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注本站的更多内容!
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













