Вы пытаетесь это сделать.
lower_list=['a','b',...,'z']
cipher_text=[chr(ord(i)+3) for i in lower_list]
['d',
'e',
'f',
...
'z',
'{',
'|',
'}']
РЕДАКТИРОВАТЬ:
Когда домен и диапазон символов a-z
( для краткости я рассматриваю строчные буквы az). Это пример Caeser Cipher .
<b>C.T=(P.T+K)Mod26</b>
Реализация:
lower_list=['a', 'b' ,'c', ..., 'z']
cipher_text=[chr((ord(s) + incr - 97) % 26 + 97) for s in lst]
Вы можете создать функцию для обработки как шифрования, так и дешифрования. Я бы сделал это так.
def caeser_cipher(lst,<b>incr</b>,<b>encrypt</b>=True):
if encrypt:
return [<b>chr((ord(s) + incr - 97) % 26 + 97)</b> for s in lst]
else:
return [<b>chr((ord(s) - incr - 97) % 26 + 97)</b> for s in lst]
lower_letters=['a','b', ...'z']
cipher_text=caeser_cipher(lower_letters,4)
#['e', 'f', 'g', 'h', ... ,'c', 'd']
plain_text=caeser_cipher(cipher_text,4,encrypt=False)
# ['a', 'b', 'c', ...,'z']