Курс Python → ROT13 Шифр Цезаря в Python
Шифр Цезаря — это метод шифрования, при котором каждая буква в сообщении заменяется другой буквой, находящейся на определенном расстоянии в алфавите. В данном случае используется ROT13, где каждая буква сдвигается на 13 позиций. Например, буква «A» становится «N», «B» становится «O» и так далее.
Для того чтобы расшифровать строку, зашифрованную с помощью ROT13, можно использовать модуль Python под названием this.py. Этот модуль выводит Zen of Python — набор принципов, которые руководствуют разработчиков при написании кода. Одним из них является принцип явного лучше, чем неявное.
Пример использования шифра Цезаря с помощью ROT13 в Python:
import this
def decrypt_rot13(s):
decrypted = ""
for char in s:
if char.isalpha():
shifted = ord(char) + 13
if char.islower():
if shifted > ord('z'):
shifted -= 26
elif char.isupper():
if shifted > ord('Z'):
shifted -= 26
decrypted += chr(shifted)
else:
decrypted += char
return decrypted
encrypted = "Gur Dhvpx Oebja sbeg vf gur onq pbqr"
decrypted = decrypt_rot13(encrypted)
print(decrypted)
В данном примере функция decrypt_rot13() принимает зашифрованную строку и возвращает ее расшифрованный вариант. Затем создается переменная encrypted с зашифрованной строкой, которая затем расшифровывается с помощью функции decrypt_rot13(). Результат расшифрования выводится на экран.
Другие уроки курса "Python"
- Пространство имен в Python
- Поиск самого частого элемента
- Codecademy в Telegram
- Python: динамическая типизация и проверка типов
- Поиск подстроки в строке
- Константы в модуле cmath
- Ноутбуки AMD Ryzen ™ 4000: мощность и эффективность
- Пропуск строк в файле с itertools
- Ввод нескольких значений
- Преобразование чисел в восьмеричную строку
- Использование модуля __future__
- Именованные срезы в Python
- Обработка ошибок в JSON данных
- Область видимости переменных
- Поиск частого элемента
- Установка Home Assistant
- Возврат нескольких значений
- Метод setdefault() в Python
- Установка и обучение ChatterBot
- Навыки Python: строки, типы данных
- Работа с набором данных CIFAR10 в PyTorch
- Вычисление времени выполнения
- Работа с множествами в Python
- Оптимизация методов в Python 3.7
- Метод сравнения объектов в Python
- Основы работы с базами данных в Python
- Печать месячного календаря
- Функция reversed() в Python
- Получение текущей директории
- Вычисление разности множеств в Python
- Контроль точности вывода чисел
- Взаимодействие с sys
- Списковый компрехеншен.
- Обезопасьте ввод данных
- Разделение строки в Python
- Виртуальное окружение Python
- Округление дробей в Python
- Обмен данными с asyncio.Queue
- Создание GUI на Tkinter
- Создание функций высшего порядка
- Функции min(), max(), sum()
- Замена текста в Python
- Оператор «and» в Python
- Преобразование регистра строк
- Путь к интерпретатору Python















