python ord函数如何返回ascii码?

ord()函数返回字符对应的ASCII或Unicode码点,如ord('A')为65、ord('a')为97、ord('0')为48、ord('@')为64;适用于单个字符,空或超长字符串引发TypeError,非ASCII字符返回Unicode码点。

Python 中的 ord() 函数可以直接返回字符对应的 ASCII 码值。它接收一个长度为1的字符串(即单个字符),并返回该字符在 ASCII 编码表中对应的整数。

ord() 函数基本用法

对于标准 ASCII 字符(如字母、数字、符号),ord() 会返回其对应的数值,范围是 0 到 127。

例如:
  • ord('A') 返回 65
  • ord('a') 返回 97
  • ord('0') 返回 48
  • ord('@') 返回 64

适用范围说明

虽然 ord() 可以处理任意 Unicode 字符,但当字符属于 ASCII 范围时,返回值就是标准 ASCII 码。如果传入的是非 ASCII 字符(如 '汉' 或 'é'),返回的是 Unicode 码点,不再局限于 ASCII 范围。

注意:
  • 参数必须是单个字符,否则会抛出 TypeError
  • 空字符串或长度大于1的字符串都会报错

实际使用示例

你可以用它来判断字符类型或实现简单编码转换:

print(ord('B'))        # 输出 66
print(ord(' '))        # 空格对应 32
print(ord('!'))        # 对应 33

基本上就这些。只要传入一个 ASCII 字符,ord() 就会准确返回它的 ASCII 码值。