У меня есть код-прототип шифра Цезаря.
def ciph():
string = str(input("Введите строку, которую надо зашифровать: "))
key = int(input("Введите ключ шифровки: "))
for i in string:
array = ''
i = ord(i)
i += key
i = chr(i)
array += i
print(''.join(array))
def deciph():
string = str(input("Введите строку, которую надо дешифровать: "))
key = int(input("Введите ключ дешифровки: "))
for i in string:
array = []
i = ord(i)
i -= key
i = chr(i)
array.append(i)
print(array[array])
choose = str(input("""1. Шифровка.
2. Дешифровка.
Выберите нужный вариант: """))
choose = choose.lower()
right_1 = '1', '1.', '1)', 'один', 'one', 'шифр', 'шифровка', 'шифровать'
right_2 = '2', '2.', '2)', 'два', 'two', 'де', 'дешифровка', 'дешифровать'
if (choose in right_1):
ciph()
elif (choose in right_2):
deciph()
В функции дешифровки показан старый способ вывода, а в зашифровке - попытка сделать вывод в одно слово.
1. Шифровка
2. Дешифровка
Выберите нужный вариант: >>> 1
Введите строку, которую надо зашифровать: >>> becon
Введите ключ шифровки: >>> 3
Вывод:
e
h
f
r
q
Во второй функции вывод примерно одинаков.
P.S. Это самый мой большой код после линейного алгоритма игры "Чепуха" с разветвлениями, направленными на проверку пустого значения в переменной. (2кб)
Заранее спасибо за ответ.