Advertisement
plarmi

pythonwork_14_8

Jul 9th, 2023
784
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.93 KB | None | 0 0
  1. def transliterate(text, transliteration_table):
  2.     result = ""
  3.     for char in text:
  4.         if char in transliteration_table:
  5.             result += transliteration_table[char]
  6.         else:
  7.             result += char
  8.     return result
  9.  
  10.  
  11. def transliteration_menu():
  12.     print("Выберите направление транслитерации:")
  13.     print("1. Русский -> Английский")
  14.     print("2. Английский -> Русский")
  15.     choice = input("Ваш выбор (1 или 2): ")
  16.  
  17.     if choice == "1":
  18.         source_file = "source.txt"
  19.         target_file = "transliterated.txt"
  20.         transliteration_table = {
  21.             'а': 'a', 'б': 'b', 'в': 'v', 'г': 'g', 'д': 'd', 'е': 'e', 'ё': 'yo', 'ж': 'zh', 'з': 'z', 'и': 'i',
  22.             'й': 'y', 'к': 'k', 'л': 'l', 'м': 'm', 'н': 'n', 'о': 'o', 'п': 'p', 'р': 'r', 'с': 's', 'т': 't',
  23.             'у': 'u', 'ф': 'f', 'х': 'kh', 'ц': 'ts', 'ч': 'ch', 'ш': 'sh', 'щ': 'shch', 'ъ': '', 'ы': 'y', 'ь': '',
  24.             'э': 'e', 'ю': 'yu', 'я': 'ya',
  25.             'А': 'A', 'Б': 'B', 'В': 'V', 'Г': 'G', 'Д': 'D', 'Е': 'E', 'Ё': 'YO', 'Ж': 'ZH', 'З': 'Z', 'И': 'I',
  26.             'Й': 'Y', 'К': 'K', 'Л': 'L', 'М': 'M', 'Н': 'N', 'О': 'O', 'П': 'P', 'Р': 'R', 'С': 'S', 'Т': 'T',
  27.             'У': 'U', 'Ф': 'F', 'Х': 'KH', 'Ц': 'TS', 'Ч': 'CH', 'Ш': 'SH', 'Щ': 'SHCH', 'Ъ': '', 'Ы': 'Y', 'Ь': '',
  28.             'Э': 'E', 'Ю': 'YU', 'Я': 'YA'
  29.         }
  30.     elif choice == "2":
  31.         source_file = "source.txt"
  32.         target_file = "transliterated.txt"
  33.         transliteration_table = {
  34.             'a': 'а', 'b': 'б', 'v': 'в', 'g': 'г', 'd': 'д', 'e': 'е', 'yo': 'ё', 'zh': 'ж', 'z': 'з', 'i': 'и',
  35.             'y': 'й', 'k': 'к', 'l': 'л', 'm': 'м', 'n': 'н', 'o': 'о', 'p': 'п', 'r': 'р', 's': 'с', 't': 'т',
  36.             'u': 'у', 'f': 'ф', 'kh': 'х', 'ts': 'ц', 'ch': 'ч', 'sh': 'ш', 'shch': 'щ', 'y': 'ы', 'e': 'э', 'yu': 'ю',
  37.             'ya': 'я',
  38.             'A': 'А', 'B': 'Б', 'V': 'В', 'G': 'Г', 'D': 'Д', 'E': 'Е', 'YO': 'Ё', 'ZH': 'Ж', 'Z': 'З', 'I': 'И',
  39.             'Y': 'Й', 'K': 'К', 'L': 'Л', 'M': 'М', 'N': 'Н', 'O': 'О', 'P': 'П', 'R': 'Р', 'S': 'С', 'T': 'Т',
  40.             'U': 'У', 'F': 'Ф', 'KH': 'Х', 'TS': 'Ц', 'CH': 'Ч', 'SH': 'Ш', 'SHCH': 'Щ', 'Y': 'Ы', 'E': 'Э', 'YU': 'Ю',
  41.             'YA': 'Я'
  42.         }
  43.     else:
  44.         print("Некорректный выбор.")
  45.         return
  46.  
  47.     with open(source_file, 'r') as source:
  48.         text = source.read()
  49.  
  50.     transliterated_text = transliterate(text, transliteration_table)
  51.  
  52.     with open(target_file, 'w') as target:
  53.         target.write(transliterated_text)
  54.  
  55.     print(f"Текст успешно транслитерирован и записан в файл '{target_file}'.")
  56.  
  57.  
  58. # Пример использования
  59. transliteration_menu()
  60.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement