Шифр цезаря с сдвигом на длину слова.
На вход программе подается строка текста на английском языке, в которой нужно зашифровать все слова. Каждое слово строки следует зашифровать с помощью шифра Цезаря (циклического сдвига на длину этого слова). Строчные буквы при этом остаются строчными, а прописные – прописными.
На вход программе подается строка текста на английском языке.
Примечание. Символы, не являющиеся английскими буквами, не изменяются.
Пример:
Day, mice. "Year" is a mistake!
Gdb, qmgi. "Ciev" ku b tpzahrl!
Господи...
import re
s=(input('Текст? ')).split()
for i in s:
~~new=[]
~~ii=re.sub(r'[^\w\s]','',i)
~~for j in i:
~~~~if j.isalpha()==True:
~~~~~~kod=ord(j)+len(ii)
~~~~~~if 90<kod<97: kod=kod-26
~~~~~~if kod>122: kod=kod-26
~~~~~~new.append(str(chr(kod)))
~~~~else: new.append(j)
~~print (''.join(new), end=' ')