У меня возникают проблемы с функцией chr(). Мой код сначала берет вход пользователя, помещает его в массив и затем использует функцию ord, чтобы преобразовать его в соответствующее числовое значение и делает то же самое с ключевым словом. Затем он использует функцию zip, чтобы добавить оба массива вместе, чтобы получить числа, и использует функцию chr на нем, чтобы вернуть его в текст. Проблема заключается в том, что CHR функция выводит неправильноОшибка функции chr() Python
Например
значение числа с 99
количество valueof ч составляет 104
Они добавляют вместе, чтобы сделать 203
мой код выхода \ XCB
, когда я сделал отдельный код, который просто
leb = chr(203)
print leb
Это выводит 203 как é, который является особой характер и то, что мне нужно для декодирования его
Вот мой код
num_string = raw_input("enter what you would like to encrypt")
num_list = []
for num in num_string:
num_list.append(ord(num))
print num_list
key_string = raw_input("enter the keyword")
key_list = []
for key in key_string:
key_string = key_list.append(ord(key))
print key_list
end_string = [x + y for x, y in zip(num_list, key_list)]
end_list = []
print end_string
for end in end_string:
end_list.append(chr(end))
print end_list
Когда запускается это выход
введите то, что вы хотели бы зашифровать кошку
[99]
[99, 97]
[99, 97, 116]
вводить keywordhat
[104]
[104, 97]
[104, 97, 116]
[203, 194, 232]
[ '\ XCB', '\ xc2', '\ X Е8']
Почему мой код делает это и как это исправить?
ASCII коды запуска до 127 – Pynchia
Я не» t знать, какую таблицу ascii вы смотрите, но даже с расширенной таблицей 203 ascii не равна Ë. http://www.asciitable.com/ – SirParselot
Что вы ожидаете, это символ '\ xcb' в специальной кодовой странице. Ничего не так, просто ваше ожидание результата. –