Функция ord() в Python
ord()является встроенной функцией в Python, используемой для получения кодовой точки Unicode символа.
ord()Она принимает символ (строку длиной 1) и возвращает соответствующую кодовую точку Unicode (целое число). Она являетсяchr()обратной функцией chr().
Определение слова: ordДаordinalСокращение от (ordinal).
Базовый синтаксис и параметры
Формат синтаксиса
ord(c)
Описание параметра
- Параметр c:
- Тип: Символ (строка длиной 1)
- Описание: Символ, для которого нужно получить кодовую точку Unicode.
Описание функций
- Возвращаемое значение: Возвращает целое число, представляющее кодовую точку Unicode символа.
Примеры
Пример 1: Базовое использование
Пример
# Английские буквы
print(ord('A')) # Вывод: 65
print(ord('Z')) # Вывод: 90
print(ord('a')) # Вывод: 97
print(ord('z')) # Вывод: 122
# Числа
print(ord('0')) # Вывод: 48
print(ord('9')) # Вывод: 57
# Обычные символы
print(ord('!')) # Вывод: 33
print(ord('@')) # Вывод: 64
# Китайские иероглифы
print(ord('middle')) # Вывод: 20013
print(ord('language')) # Вывод: 25991
print(ord('you')) # Вывод: 20320
# Пробел
print(ord(' ')) # Вывод: 32
print(ord('A')) # Вывод: 65
print(ord('Z')) # Вывод: 90
print(ord('a')) # Вывод: 97
print(ord('z')) # Вывод: 122
# Числа
print(ord('0')) # Вывод: 48
print(ord('9')) # Вывод: 57
# Обычные символы
print(ord('!')) # Вывод: 33
print(ord('@')) # Вывод: 64
# Китайские иероглифы
print(ord('middle')) # Вывод: 20013
print(ord('language')) # Вывод: 25991
print(ord('you')) # Вывод: 20320
# Пробел
print(ord(' ')) # Вывод: 32
Ожидаемый вывод:
65 90 97 122 48 57 33 64 20013 25991 20320 32
Анализ кода:
- Заглавные буквы A-Z имеют кодовые точки Unicode 65-90.
- Строчные буквы a-z имеют кодовые точки Unicode 97-122.
- Китайские иероглифы обычно имеют кодовые точки Unicode больше 19968 (0x4E00).
Пример 2: Работа с chr()
Пример
# ord() — обратная функция chr()
print(chr(ord('A'))) # Вывод: A
print(ord(chr(65))) # Вывод: 65
# Вычисление смещения символа
char = 'A'
offset = 3
new_char = chr(ord(char) + offset)
print(new_char) # Вывод: D
# Пример шифра Цезаря
def caesar_encode(text, shift):
result = ""
for c in text:
if c.isalpha():
base = ord('A') if c.isupper() else ord('a')
result += chr((ord(c) - base + shift) % 26 + base)
else:
result += c
return result
print(caesar_encode("ABC", 3)) # Вывод: DEF
print(caesar_encode("XYZ", 3)) # Вывод: ABC
print(chr(ord('A'))) # Вывод: A
print(ord(chr(65))) # Вывод: 65
# Вычисление смещения символа
char = 'A'
offset = 3
new_char = chr(ord(char) + offset)
print(new_char) # Вывод: D
# Пример шифра Цезаря
def caesar_encode(text, shift):
result = ""
for c in text:
if c.isalpha():
base = ord('A') if c.isupper() else ord('a')
result += chr((ord(c) - base + shift) % 26 + base)
else:
result += c
return result
print(caesar_encode("ABC", 3)) # Вывод: DEF
print(caesar_encode("XYZ", 3)) # Вывод: ABC
Ожидаемый вывод:
A 65 D DEF ABC
ord()иchr()При совместном использовании их можно применять в таких сценариях, как преобразование кодировки символов и криптография.
Другие расширения
Встроенные функции Python3