Курс 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
- Работа с типами данных в Python с помощью pydantic.
- Генераторы данных
- Копирование списков в Python
- Переименование файлов в Python
- Печать календаря
- Работа с файлами в Python
- Функция с **kwargs в Python
- Обработка исключений
- Вычисление натурального логарифма в NumPy
- Итерация по копии коллекции
- Тип CodeType в Python.
- Атрибуты массивов в Numpy
- Возврат нескольких значений из функции
- Конкатенация строк в Python
- Роль ключевого слова self
- Сумма элементов списка
- Перебор элементов списка в Python
- Работа с контекстным менеджером Pool
- Принципы LSP и ISP в Python
- Работа со строками в Python
- Команда %dhist — список посещенных каталогов
- Измерение времени выполнения кода
- Локальные переменные.
- Оператор is в Python
- Функция с *args.
- Форматирование чисел в Python
- Декоратор для группы пользователей в Django
- Анализ текста на русском языке с помощью Pymystem3
- Работа со слайсами
- Сравнение объектов в Python
- Работа с базами данных SQLite
- Генерация случайных чисел в Python
- Создание директории в Python
- Карта бомбоубежищ в Москве и Питере
- Переопределение метода divmod
- GitHub в Telegram: подписка на уведомления
- Методы обработки строк в Python
- Оператор is в Python
- Избегайте пустого списка
- Получение текущей даты и времени
- Проверка кортежей.
- Основы Python за 14 дней
- Сериализация и десериализация объектов
- Создание обратного итератора
- Работа с кортежами в Python
- Генераторные функции в Python















