您的位置:

Python内置函数——ord的用法解析

一、ord函数介绍

ord()是Python内置函数之一,它的作用是返回对应字符的Unicode整数编码值。在Python 2.x,它返回一个字符的ASCII值。需要注意的是,如果要获取字符对应的ASCII码,需要使用chr()函数。

二、ord函数的用法

ord()函数的使用方法很简单,只需要将需要转换的字符作为参数传入即可。

print(ord('A'))  # 输出65

同时也可以将unicode的16进制形式作为参数传入:

print(ord('\u0041'))  # 输出65

使用ord()函数可以非常方便地获取字符的Unicode编码,也可以配合chr()函数将Unicode编码转换为对应的字符。

print(chr(65))  # 输出A

三、ord函数应用场景

1. 字符串排序

在一些场景下,需要对字符串进行排序,此时可以使用ord()函数将其转换为整数,然后进行比较。

words = ['apple', 'banana', 'orange', 'pear']
sorted_words = sorted(words, key=lambda x: ord(x[0]))
print(sorted_words)  # 输出['apple', 'banana', 'orange', 'pear']

在上面的例子中,我们按照每个单词的第一个字母的Unicode值进行排序。

2. 实现字符串替换

有时需要对字符串中某些特定字符进行替换,可以使用ord()函数找到需要替换的字符,然后进行替换。

word = 'hello'
replaced_word = ''
for c in word:
    if ord(c) == 104:
        replaced_word += 'H'
    else:
        replaced_word += c
print(replaced_word)  # 输出'Hello'

在这个例子中,我们将所有的'h'替换成了大写的'H'

3. 实现简单的加密算法

可以使用ord()函数将字符串的每个字符转换为Unicode编码值,然后进行简单的加密运算。

text = 'abc'
encrypted_text = ''
for c in text:
    encrypted_text += str(ord(c)) + '-'
encrypted_text = encrypted_text[:-1]
print(encrypted_text)  # 输出'97-98-99'

在这个例子中,我们将text字符串的每个字符使用ord()函数转换为Unicode编码值,并将它们连成一个字符串。最终输出的结果为"97-98-99"。

四、总结

ord()函数是Python内置函数之一,它的作用是返回对应字符的Unicode编码值。使用ord()函数可以方便地获取字符的编码值,从而进行字符串排序、字符串替换等操作。