Курс 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
- Оператор += для объединения строк
- Метод __int__ в Python
- Лямбда-функции для min/max
- Методы list в Python
- Numpy: разбиение массивов
- Функция с **kwargs в Python
- Логирование с Logzero
- Пустой оператор pass в Python
- Работа с Colorama
- Добавление элементов в список: append() vs extend()
- Проверка условий: all и any
- Метод __imod__ для Python
- Оператор «not» в Python
- Удаление символа из строки
- Получение идентификатора объекта в памяти
- Шаблоны и наследование в Flask
- Создание спинбокса в tkinter
- Глобальные переменные в Python
- Создание словарей и множеств в Python
- Конкатенация списков в Python
- Комментарии в Python
- Сравнение объектов в Python
- Поиск наиболее частого элемента
- Обмен значений переменных в Python
- Лямбда-функции в Python
- Удаление символов новой строки в Python.
- Получение списка файлов в директории с использованием os
- Установка Python — Простое руководство
- Проектирование Singleton с метаклассом
- Обработка ошибок в Python
- Методы и функции в Python
- Удаление ключа из словаря
- Удаление файлов с shutil.os.remove()
- Создание и использование модулей в Python
- Получение частей дроби
- Оператор объединения словарей
- Удаление дубликатов из списка с помощью dict.fromkeys
- Нан-рефлексивность в Python
- Циклы for в Python
- Перетасовка списков в Python
- Сортировка и обратный порядок
- Вызов внешних программ в Python с помощью sh















