chr()

Функция chr() возвращает строку из одного символа Unicode по его числовому коду. Обратная к ней — ord(). Допустимый диапазон: 0 … 1114111 (0x10FFFF).

Сигнатура

chr(i)

Параметры:

  • i — целое число от 0 до 0x10FFFF.

Возвращает: str длиной 1.

Примеры

ASCII-символы:

print(chr(65))
print(chr(97))
print(chr(48))
print(chr(36))
A
a
0
$

Кириллица и эмодзи:

print(chr(1040))
print(chr(1071))
print(chr(0x1F680))
А
Я
🚀

Построение алфавита:

ru_upper = "".join(chr(c) for c in range(1040, 1072))
en_upper = "".join(chr(c) for c in range(65, 91))
print(ru_upper)
print(en_upper)
АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ
ABCDEFGHIJKLMNOPQRSTUVWXYZ

Связка с ord():

ch = "К"
code = ord(ch)
back = chr(code)
print(code, back, ch == back)
1050 К True

Шифр Цезаря (сдвиг на 3 буквы):

def caesar(text, shift=3):
    result = []
    for c in text:
        if "A" <= c <= "Z":
            result.append(chr((ord(c) - 65 + shift) % 26 + 65))
        else:
            result.append(c)
    return "".join(result)

print(caesar("HELLO ALASH"))
KHOOR DODVK

См. также

Примечание

Описание основано на официальной документации Python (docs.python.org), распространяемой под лицензией PSF License v2. © Python Software Foundation.