Здравствуйте! Я новичок. Написал код для шифрования текста(метод цезаря) на python. Хочу услышать мнение от программистов на python. Вот код: text_sipher = "" # Переменная для хранения зашифрованного текста
languages = ["русский", "английский"] # Список языков
alphabet_en = [letter for letter in "abcdefghijklmnopqrstuvwxyzw"] # буквы английского языка
alphabet_ru = [letter for letter in "абвгдеёжзийклмнопрстуфхцчшщъыьэюя"] # буквы русского языка
# Функция возвращаемая набор букв выбранного языка
def alphabet_language(language_user_func):
if language_user_func.lower() in languages[0]:
return alphabet_ru
elif language_user_func.lower() in languages[1]:
return alphabet_en
# Функция возвращаемая зашифрованную букву. Учитывается регистр. Игнорируются не буквенные символы
def encryption_text(shift_func, char_func, alphabet_func):
symbol = ""
if char_func.isalpha():
if alphabet_func.index(char_func.lower()) + shift_func >= len(alphabet_func):
symbol += alphabet_func[alphabet_func.index(char_func.lower()) + shift_func - len(alphabet_func)]
else:
symbol += alphabet_func[alphabet_func.index(char_func.lower()) + shift_func]
else:
symbol += char_func.lower()
if char_func.upper() == char_func and char_func.isalpha():
symbol = symbol.upper()
return symbol
# Цикл будет работать пока пользователь не введёт данные правильно
while True:
language_user = input("Введите язык. Английский или русский: ")
if language_user.lower() in languages:
break
print("\nВы ввели неизвестный язык!")
alphabet_user = alphabet_language(language_user) # Переменные для результатов функции - "alphabet_language"
# Цикл будет работать пока пользователь не введёт данные правильно
while True:
text = input("Введите текст: ")
if not (text == len(text) * " " or text == ""):
for letter in text.lower():
if letter not in alphabet_user and letter.isalpha():
print("\nВаш текст некорректен!")
break
else:
break
else:
print("Ваш текст некорректен!")
# Цикл будет работать пока пользователь не введёт данные правильно
while True:
shift = int(input("Введите шаг сдвига: "))
if 0
languages = ["русский", "английский"] # Список языков
alphabet_en = [letter for letter in "abcdefghijklmnopqrstuvwxyzw"] # буквы английского языка
alphabet_ru = [letter for letter in "абвгдеёжзийклмнопрстуфхцчшщъыьэюя"] # буквы русского языка
# Функция возвращаемая набор букв выбранного языка
def alphabet_language(language_user_func):
if language_user_func.lower() in languages[0]:
return alphabet_ru
elif language_user_func.lower() in languages[1]:
return alphabet_en
# Функция возвращаемая зашифрованную букву. Учитывается регистр. Игнорируются не буквенные символы
def encryption_text(shift_func, char_func, alphabet_func):
symbol = ""
if char_func.isalpha():
if alphabet_func.index(char_func.lower()) + shift_func >= len(alphabet_func):
symbol += alphabet_func[alphabet_func.index(char_func.lower()) + shift_func - len(alphabet_func)]
else:
symbol += alphabet_func[alphabet_func.index(char_func.lower()) + shift_func]
else:
symbol += char_func.lower()
if char_func.upper() == char_func and char_func.isalpha():
symbol = symbol.upper()
return symbol
# Цикл будет работать пока пользователь не введёт данные правильно
while True:
language_user = input("Введите язык. Английский или русский: ")
if language_user.lower() in languages:
break
print("\nВы ввели неизвестный язык!")
alphabet_user = alphabet_language(language_user) # Переменные для результатов функции - "alphabet_language"
# Цикл будет работать пока пользователь не введёт данные правильно
while True:
text = input("Введите текст: ")
if not (text == len(text) * " " or text == ""):
for letter in text.lower():
if letter not in alphabet_user and letter.isalpha():
print("\nВаш текст некорректен!")
break
else:
break
else:
print("Ваш текст некорректен!")
# Цикл будет работать пока пользователь не введёт данные правильно
while True:
shift = int(input("Введите шаг сдвига: "))
if 0