Python中的ord和chr函数-如何在字符和数字之间进行转换
在Python中,ord()函数可以将一个字符转换为其对应的Unicode编码值,而chr()函数则可以将一个Unicode编码值转换为其对应的字符。这两个函数常常用于字符和数字之间的转换。本文将介绍ord()和chr()函数的使用方法及其相关实例。
一、ord()函数
ord()函数返回一个字符的Unicode编码值。Unicode是一种用于统一处理、存储和传输文字的字符集,其中每个字符都对应着一个唯一的码点(code point)或Unicode码值。在Python中,字符采用Unicode编码形式存储,每个字符对应一个16位的码点值。
语法格式:ord(c)
参数说明:c表示一个字符,必须为字符串类型。
返回值:返回字符c的Unicode编码值,为十进制整数。
以下是ord()函数的示例:
(1) 使用ord()函数获取字符'A'的Unicode编码值
print(ord('A'))
输出结果为:65
(2) 使用ord()函数获取字符'中'的Unicode编码值
print(ord('中'))
输出结果为:20013
二、chr()函数
chr()函数根据一个Unicode编码值返回其对应的字符。其用法和ord()函数正好相反,可以将十进制整数转换为Unicode字符。
语法格式:chr(i)
参数说明:i为Unicode编码值,必须为一个整数。
返回值:返回Unicode编码值对应的字符,为字符串类型。
以下是chr()函数的示例:
(1) 使用chr()函数获取Unicode编码值为65的字符
print(chr(65))
输出结果为:A
(2) 使用chr()函数获取Unicode编码值为20013的字符
print(chr(20013))
输出结果为:中
三、字符和数字的相互转换
由于ord()函数可以将字符转换为Unicode编码值,而chr()函数可以将Unicode编码值转换为字符,因此可以使用这两个函数相互转换字符和数字类型。下面是一些示例:
(1) 将字符转换为数字
使用ord()函数将字符转换为其对应的Unicode编码值,即数字类型。
print(ord('A')) # 返回65
(2) 将数字转换为字符
使用chr()函数将Unicode编码值转换为其对应的字符。
print(chr(65)) # 返回'A'
(3) 将字符串中的所有字符转换为数字
使用ord()函数将字符串中的所有字符转换为Unicode编码值,再通过列表推导式将其转换为数字类型。
str = 'Hello World'
nums = [ord(c) for c in str]
print(nums) # 返回[72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100]
(4) 将数字列表中的所有数字转换为字符
使用chr()函数将数字列表中的所有数字转换为其对应的字符,再通过join()函数将其连接为一个字符串。
nums = [72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100]
str = ''.join([chr(n) for n in nums])
print(str) # 返回'Hello World'
总结:
Python中的ord()函数和chr()函数可以实现字符和数字之间的相互转换。使用ord()函数可以将一个字符转换为Unicode编码值,而使用chr()函数则可以将一个Unicode编码值转换为其对应的字符。这两个函数常常用于字符串处理和编码转换等方面。通过本文的介绍,相信读者已经掌握了使用ord()函数和chr()函数的方法及其相关应用。
