Python ord函数

Python ord函数

Python ord函数

1. 简介

在Python中,ord函数是一个内置函数,它用于返回指定字符的Unicode码值。Unicode是一种字符编码标准,它为世界上几乎所有的字符定义了一个唯一的数字码点。ord函数可以帮助我们了解字符的底层表示。

2. 语法

ord函数的语法如下:

ord(c)

这里,c表示需要获取Unicode码值的字符。

3. 示例

下面是一些使用ord函数的示例:

print(ord('A'))
print(ord('a'))
print(ord('0'))
print(ord('*'))

运行结果:

65
97
48
42

在这个示例中,我们分别使用ord函数获取了字符’A’,’a’,’0’和’*’的Unicode码值,并打印出来。

4. 注意事项

  • ord函数只能接受一个字符作为参数,如果传入的参数超过一个字符,会抛出TypeError异常。
print(ord('ABC'))  # 抛出TypeError异常
  • ord函数返回的结果是一个整数,代表字符的Unicode码值。

  • 对于ASCII字符集中的字符,ord函数返回的结果与对应的ASCII码值相同。ASCII码是一种最早的字符编码标准,它仅包含128个字符。

  • 对于非ASCII字符,ord函数返回的结果是该字符在Unicode字符集中的码点值。

5. 与chr函数相反

与ord函数对应的是chr函数。chr函数的作用是返回指定Unicode码值对应的字符。

下面是一些使用chr函数的示例:

print(chr(65))
print(chr(97))
print(chr(48))
print(chr(42))

运行结果:

A
a
0
*

在这个示例中,我们分别使用chr函数将Unicode码值65,97,48和42转换为对应的字符,并打印出来。

6. ord函数的应用

ord函数在实际应用中有广泛的用途,例如:

  • 判断字符的大小写

由于大写字母的Unicode码值小于小写字母的Unicode码值,我们可以使用ord函数来判断一个字符是否是大写字母。

c = 'A'
if ord(c) >= ord('A') and ord(c) <= ord('Z'):
    print('是大写字母')
  • 加密和解密

在密码学中,我们经常会用到字符的编码和解码。ord函数可以辅助我们进行简单的加密和解密操作。

下面是一个简单的加密示例,将字符串中的所有字符的Unicode码值加上一个固定值,得到加密后的字符串。

def encrypt_string(s, shift):
    encrypted = ''
    for c in s:
        encrypted += chr(ord(c) + shift)
    return encrypted

s = 'Hello, World!'
print(encrypt_string(s, 1))

运行结果:

Ifmmp-!Xpsme"

在这个示例中,我们定义了一个encrypt_string函数来对字符串进行加密,shift参数表示加密时每个字符的Unicode码值增加的偏移量。最后,我们将字符串’Hello, World!’加密并打印出来。

当然,解密操作就是将加密字符串中的每个字符的Unicode码值减去对应的偏移量,恢复原始的字符串。

7. 小结

ord函数是Python中用于获取字符Unicode码值的一个内置函数。它对于了解字符底层编码,判断大小写,加密和解密等操作都非常有用。chr函数则是ord函数的逆操作,用于根据Unicode码值获取字符。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程