/
ilya.petrash
/
SimplePyScripts
Обзор
Документация
Войти
/
ilya.petrash
/
SimplePyScripts
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
swap_keyboard.py
30 строк
1 KB
gil9red
Refactoring
03 июн 2024, 18:58
03 июн 2024, 18:58
b3d4e5c
Код
Авторство
О чём код?
#!/usr/bin/env python3 # -*- coding: utf-8 -*- __author__ = "ipetrash" def swap_keyboard(text: str) -> str: en = """qwertyuiop[]asdfghjkl;'zxcvbnm,./`QWERTYUIOP{}ASDFGHJKL:"ZXCVBNM<>?~""" ru = """йцукенгшщзхъфывапролджэячсмитьбю.ёЙЦУКЕНГШЩЗХЪФЫВАПРОЛДЖЭЯЧСМИТЬБЮ,Ё""" translator: dict[str, str] = { **dict(zip(ru, en)), **dict(zip(en, ru)), } table: dict[int, str] = str.maketrans(translator) return text.translate(table) if __name__ == "__main__": text = "B ,skb ghj,ktvs c ujcntdjq dhjlt ,s? gjcvjnhb " print(text) print(swap_keyboard(text)) assert swap_keyboard(text) == "И были проблемы с гостевой вроде бы, посмотри " assert swap_keyboard("Ghbdtn! Руддщ!") == "Привет! Hello!" assert swap_keyboard("Ghbdtn! 123 Руддщ!") == "Привет! 123 Hello!" text = "Ghbdtn! Руддщ!" assert swap_keyboard(swap_keyboard(text)) == text