Как преобразовать список чисел в список букв Python - PullRequest
0 голосов
/ 11 сентября 2018

Впервые в Python, и я пытаюсь закодировать зашифрованное сообщение

Алфавит был переписан следующим образом:

cipher = [ "q", "a", "z", "w", "s", "x", "e", "d", "c", "r", "f", "v", "t", "g", "b", "y", "h", "n", "u", "j", "m", "i", "k", "o", "l", "p"]

idx = ord ("d") - ord ("a")

print(cipher[3])

ВЫХОД: w

input = str(input('Write Text: ')) #hello world used here
input = input.lower()
output = []
for character in input:
    number = ord(character) - 97
    output.append(number)
print(output)

ВЫХОД:

[7, 4, 11, 11, 14, -65, 22, 14, 17, 11, 3]

Не уверен, как соотнести эти два ...

Я пробовал:

print(cipher[output])

Возвращает ошибку типа: индексы списка должны быть целыми или кусочками, а не списком

Заранее спасибо

1 Ответ

0 голосов
/ 11 сентября 2018

Я думаю, что вы хотите что-то вроде:

deciphered = [cipher[i] if i > 0 else ' ' for i in output]
print(''.join(deciphered))

обратите внимание, что здесь есть бит i>0 для обработки пробелов, что приводит к number -65 ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...