这篇文章主要为大家展示了Python3如何实现内置函数chr和ord进制转换,内容简而易懂,希望大家可以学习一下,学习完之后肯定会有收获的,下面让小编带大家一起来看看吧。
python的内置函数中,有一对函数:chr 和 ord,有着相反的功能。
1. chr(x):用一个数值作参数,返回一个对应的unicode字符,该参数的有效范围是从0到1114111(16进制时为0x10FFFF),参数可以是十进制,也可以是十六进制。
print(chr(105)) # ---> i print(chr(0x9980)) # ---> 汉字:馀 print(chr(0x0030)) # ---> 0 print(chr(8364)) # ---> ? print(chr(127137)) # ---> 扑克:A print(chr(44032)) # ---> 韩语:가 print(chr(126976)) # --->麻将:东
2. ord(x):chr(x)的反向函数,通过一个Unicode字符,返回其对应的数值。
print(ord('0')) # ---> 48(十进制):其十六进制为 0x0030 print(ord('i')) # ---> 105(十进制)
3. 其中,进制转换,主要有以下几种方式:
十六进制、二进制、八进制转十进制,注意:二进制表示中每一位只能是0或1表示,八进制中每一位只能在0-7之间,同理十六进制中的每一位在0-f之间,超出范围会报错。
print(int('10',2)) #二进制转十进制,int('20',2) 会报错
print(int('30',8)) #八进制转十进制,int('80',8) 会报错
print(int('f0',16)) #十六进制转十进制,int('g0',16) 会报错# 下面的方式也可
print(int('0b10',2)) #二进制转十进制
print(int('0o30',8)) #八进制转十进制
print(int('0xf0',16)) #十六进制转十进制
十进制转二进制、八进制、十六进制,内置函数bin、oct、hex得到的进制前面会分别带有'0b','0o','0x'字符。
print(bin(15)) # 十进制转二进制
print(oct(15)) # 十进制转八进制
print(hex(482)) # 十进制转十六进制
或者
print(format(482,"x")) # 十进制转十六进制
print(format(15,"o")) # 十进制转八进制
print(format(15,"b")) # 十进制转二进制
4. format进制转换,b,o,d,x 分别表示 二进制、八进制、十进制、十六进制
十六进制转二进制、八进制、十进制
# format进制转换 print('{:b}'.format(0xef)) #十六进制转二进制:11101111 print('{:o}'.format(0xef)) #十六进制转八进制:357 print('{:d}'.format(0xef)) #十六进制转十进制:239 #格式化中加'#'表示加入标识 print('{:#b}'.format(0xef)) #十六进制转二进制:0b11101111,加标识 0b print('{:#o}'.format(0xef)) #十六进制转八进制:0o357,加标识 0o print('{:#d}'.format(0xef)) #十六进制转十进制:239,十进制不变
八进制、十进制转二进制
print('{:b}'.format(0o357)) #八进制转二进制:11101111
print('{:b}'.format(239)) #十进制转二进制:11101111
print('{:#b}'.format(0o357)) #八进制转二进制:0b11101111,加标识 0b
print('{:#b}'.format(239)) #十进制转二进制:0b11101111,加标识 0b
十进制、八进制、二进制转十六进制
# print('{:x}'.format(239)) #十进制转十六进制:ef print('{:x}'.format(0b11101111)) #二进制转十六进制:ef print('{:x}'.format(0o357)) #八进制转十六进制:ef # print('{:#x}'.format(239)) #十进制转十六进制:0xef,加标识 0x print('{:#x}'.format(0b11101111)) #二进制转十六进制:0xef,加标识 0x print('{:#x}'.format(0o357)) #八进制转十六进制:0xef,加标识 0x
八进制以 '0o开头',二进制以 '0b' 开头,十六进制以 '0x' 开头。
注:
正好了解一下unicode字符集,Unicode(统一码、万国码、单一码)是计算机科学领域里的一项业界标准,包括字符集、编码方案等,是可以容纳世界上所有文字和符号的字符编码方案,比ASCII码能表示的范围大得多。
其中包括的种类可以自行搜索,每个种类在各自的区间范围内,有趣的字符很多,参考知乎大佬的操作,可以发现:
以上就是关于Python3如何实现内置函数chr和ord进制转换的内容,如果你们有学习到知识或者技能,可以把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。