内置函数值 -- chr() ord() -- 字符和ascii的转换

2020-09-27 15:32:01 浏览数 (1)

英文文档:

chr(i)  Return the string representing a character whose Unicode code point is the integer i. For example, chr(97) returns the string 'a', while chr(8364) returns the string '€'. This is the inverse of ord().  The valid range for the argument is from 0 through 1,114,111 (0x10FFFF in base 16). ValueError will be raised if i is outside that range说明:  1. 函数返回整形参数值所对应的Unicode字符的字符串表示

代码语言:javascript复制
>>> chr(97) #参数类型为整数
'a'

>>> chr('97') #参数传入字符串时报错
Traceback (most recent call last):
  File "<pyshell#6>", line 1, in <module>
    chr('97')
TypeError: an integer is required (got type str)

>>> type(chr(97)) #返回类型为字符串
<class 'str'>

  2. 它的功能与ord函数刚好相反

代码语言:javascript复制
>>> chr(97)
'a'
>>> ord('a')
97

  3. 传入的参数值范围必须在0-1114111(十六进制为0x10FFFF)之间,否则将报ValueError错误

代码语言:javascript复制
>>> chr(-1) #小于0报错
Traceback (most recent call last):
  File "<pyshell#10>", line 1, in <module>
    chr(-1)
ValueError: chr() arg not in range(0x110000)

>>> chr(1114111)
'U0010ffff'

>>> chr(1114112) #超过1114111报错
Traceback (most recent call last):
  File "<pyshell#13>", line 1, in <module>
    chr(1114112)
ValueError: chr() arg not in range(0x110000)

简单描述

代码语言:javascript复制
chr接收一个数字, 找到这个数字对应的ascii里的元素(只能接受数字)
a = chr(65)
print(a)  #结果: A
代码语言:javascript复制
ord()接收一个字符,返回这个字符对应的数字.(只能接受一个字符)
b = ord('a')
print(b)  #结果: 97

0 人点赞