Python ord函数()案例详解

  • Post category:Python

Python ord函数()案例详解

在Python中,ord()函数是一个内置函数,它用于获取一个字符的Unicode码。Unicode码是一个标准的字符编码方案,用于表示大部分文本字符。本文将介绍ord()函数的使用方法以及一些实际应用案例。

ord函数的使用方法

ord()函数接受一个字符作为参数,返回该字符的Unicode码。例如,运行以下代码:

char = 'A'
print(ord(char))

输出将是:

65

这是字母’A’对应的Unicode码。同样的,ord()函数也可以用于获取其它字符的Unicode码,例如:

print(ord('中'))

这将输出中文字符’中’对应的Unicode码:20013。

实际应用案例

字符串加密

在一些情况下,我们需要对字符串进行加密,例如在密码学中或安全网络通信中,加密字符串可以保护数据的安全性。ord()函数可以用于将字符串转换为数字,进一步加强字符串的安全性。

以下是一个简单的例子,将字符串的每个字符转换为数字并存储在列表中:

string = "hello world"
encrypted = []
for char in string:
    encrypted.append(ord(char))
print(encrypted)

输出:

[104, 101, 108, 108, 111, 32, 119, 111, 114, 108, 100]

字符串排序

在一些情况下,我们需要对字符串进行排序,例如在姓名排序或者单词排序等。因为Python默认按字母顺序进行字符串排序,如果需要按照Unicode码进行排序,可以使用ord()函数。以下是一个简单的例子:

strings = ["张三", "李四", "王五", "John", "Abby", "Tom"]
sort_by_unicode = sorted(strings, key=lambda x: [ord(c) for c in x])
print(sort_by_unicode)

输出:

['Abby', 'John', 'Tom', '张三', '李四', '王五']

在这个例子中,我们使用sorted()函数将strings列表按照Unicode码进行排序。通过给定一个函数key作为sorted()函数的参数,Python将会使用该函数对列表中的元素进行排序。我们使用lambda函数对每个字符串中的字符进行ord()函数的操作,将结果组成一个列表,再对该列表进行排序,这样就可以按照Unicode码由小到大进行字符串排序。

总结

ord()函数是Python内置的一个重要函数,它可以用于获取字符的Unicode码,进一步加强字符串的处理和安全性。在实际应用中,ord()函数可以用于字符串的加密、字符排序和其它操作,灵活使用可以为编程带来更多的便利。