Автор оригинала: Team Python Pool.
В python иногда мы хотим найти символ, когда задано целое число (обычно значения ASCII). И для этой цели у нас есть chr() в python, который принимает целое число в качестве значения и дает символ в качестве значения. Аргумент, который может быть задан его целочисленному параметру, находится в диапазоне (0 – 1,114,111).
Например – Значение chr целого числа 65 равно “A”; для 92-го значение равно “a”.
Синтаксис chr() python
chr(n)
Здесь ‘n’ – любое значение в диапазоне (0- 1,114,111). Если мы дадим отрицательное число или число больше определенного диапазона, то получим ошибку- ValueError: chr() arg not in range(0x110000).
Требуется только один href=”https://en.wikipedia.org/wiki/Parameter_(computer_programming)”> параметр, и это число, символьное значение которого мы хотим найти. href=”https://en.wikipedia.org/wiki/Parameter_(computer_programming)”> параметр, и это число, символьное значение которого мы хотим найти.
Если мы хотим найти символьное значение для целого числа – 65-
Output- A
Некоторые примеры Python chr()
Печать символов из целых чисел с помощью chr() python-
Выход-
character value for 78 : N character value for 102 : f character value for 60 : <
Вывод символов из списка целых чисел
integers=[100,34,45,65,72,12] for i in integers: print(chr(i))
Output- d " - A H
Мы также можем сделать что-то подобное-
integers=[100,34,45,65,72,12](map(chr,integers)) print(characters)
Output- ['d', '"', '-', 'A', 'H', '\x0c']
Первые 1000 символов
Давайте сделаем программу для печати всех символов, которые имеют значение ASCII от 60 до 90. Вы можете играть с числами и изменять эти значения по своему усмотрению. Но имейте в виду диапазон значений, которые принимает chr ().
for i in range(60,91): print("ASCII VALUE:",i,"Character:",chr(i))
ASCII VALUE: 60 Character: < ASCII VALUE: 61 VALUE: 62 Character: > ASCII VALUE: 63 Character: ? ASCII VALUE: 64 Character: @ ASCII VALUE: 65 Character: A ASCII VALUE: 66 Character: B ASCII VALUE: 67 Character: C ASCII VALUE: 68 Character: D ASCII VALUE: 69 Character: E ASCII VALUE: 70 Character: F ASCII VALUE: 71 Character: G ASCII VALUE: 72 Character: H ASCII VALUE: 73 Character: I ASCII VALUE: 74 Character: J ASCII VALUE: 75 Character: K ASCII VALUE: 76 Character: L ASCII VALUE: 77 Character: M ASCII VALUE: 78 Character: N ASCII VALUE: 79 Character: O ASCII VALUE: 80 Character: P ASCII VALUE: 81 Character: Q ASCII VALUE: 82 Character: R ASCII VALUE: 83 Character: S ASCII VALUE: 84 Character: T ASCII VALUE: 85 Character: U ASCII VALUE: 86 Character: V ASCII VALUE: 87 Character: W ASCII VALUE: 88 Character: X ASCII VALUE: 89 Character: Y ASCII VALUE: 90 Character: Z
Когда мы Получаем Ошибку
Мы обычно получаем ошибку, когда пытаемся дать значение, которое невозможно.
# too large a value print(chr(a))
Output- ValueError: chr() arg not in range(0x110000)
b=-34 print(chr(b))
Output- ValueError: chr() arg not in range(0x110000)
Разница между chr() и ord() в python
Аналогом chr() в python является функция ord (). В отличие от chr(), ord() принимает символы и выдает целочисленные значения в качестве выходных данных.
Теперь давайте создадим программу, которая меняет прописные символы на строчные, используя как chr (), так и ord().
Output- Original string: THESE CHARACTERS WILL GET CONVERTED INTO LOWERCASE New String: these characters will get converted into lowercase
Шифрование и дешифрование строки с помощью chr()
Теперь давайте используем chr() и ord() в python, чтобы создать простую, но интересную программу, которая может шифровать или расшифровывать строку. Шифрование-это процесс преобразования обычного текста в зашифрованный. Расшифровка-это как раз противоположность этому. Здесь мы преобразуем обратно зашифрованный текст в обычный.
def encrypt(string): for i in range(len(string)): # If the charcter is in upper case if and: (ord(string[i])-encrypt_code) # If the character is in lower case and: (ord(string[i])+encrypt_code) # Here we are assuming that the string consist of only letters and spaces else: return string
def decrypt(string): for i in range(len(string)): if and: (ord(string[i])+encrypt_code) and: (ord(string[i])-encrypt_code) else: return (new_string)
encrypted string: 2µ°¤«ª ¥¯ °¤¡ ž¡¯° decrypted string: Python is the best
Должен Читать
- Как преобразовать строку в нижний регистр в
- Как вычислить Квадратный корень
- Пользовательский ввод | Функция ввода () | Ввод с клавиатуры
- Лучшая книга для изучения Python
Вывод
Мы изучили почти все о chr() в python. Обычно он используется для преобразования значения ASCII в символ. Аналогом этого является ord(), который сохраняет символ в его ASCII-значение.
Попробуйте запустить программы на вашей стороне и дайте нам знать, если у вас есть какие-либо вопросы.
Счастливого кодирования!