Python - английский переводчик - PullRequest
2 голосов
/ 06 октября 2010

Как лучше всего подходить к написанию программы на Python для перевода английских слов и / или фраз на другие языки?

Ответы [ 5 ]

2 голосов
/ 06 октября 2010

AJAX Language API

Это невероятно сложная проблема - язык очень очень сложен.Подумайте обо всех вещах, которые вам нужно сделать - разобрать фразу, понять, что означают слова, перевести их.Это, вероятно, не идиоматично, поэтому вам понадобятся особые случаи для разных синтаксисов.Много, много особых случаев.Вам нужно будет выработать синтаксис иностранного языка, если он отличается от английского - например, «большой зеленый шар» означает «большой зеленый шар» на испанском языке.

Не изобретайте зановоколесо.Google предоставляет API для своей службы переводов, которая, несомненно, заставила многих умных людей очень серьезно задуматься об этом.

1 голос
/ 06 октября 2010

Самый простой способ сделать это - создать словарь, который сопоставляет слова одного языка со словами другого языка. Тем не менее, это очень глупо и не учитывает грамматику вообще, и создание переводчика буквально займет очень много времени, особенно если вы планируете использовать его для нескольких языков. Если грамматика не важна для вас (например, если вы создавали свой собственный язык для игры или истории, у которой грамматика не отличается от английского), вы могли бы избежать использования словарей и просто заставить функцию искать запрошенный совпадение в словаре

1 голос
/ 06 октября 2010

Думаю, вам стоит заглянуть в Google Translate API. Здесь - библиотека, реализованная специально для этой цели в python.

0 голосов
/ 07 мая 2019
 # Please install Microsoft translate using >> pip install translate

 from translate import Translator

 class clsTranslate():

     def translateText(self, strString, strTolang):
         self.strString = strString
         self.strTolang = strTolang
         translator = Translator(to_lang=self.strTolang)
         translation = translator.translate(self.strString)
         return (str(translation))

 # Create a Class object and call the Translate function
 # Pass the language as a parameter to the function, de: German zh: Chinese etc

objTrans=clsTranslate() 

strTranslatedText= objTrans.translateText('Howare you', 'de')

print(strTranslatedText)
0 голосов
/ 08 марта 2017

Вы можете использовать Goslate Package для этого очень простого в использовании примера.

import goslate
print(goslate.Goslate().translate('hello world', 'ar'))

теперь первый аргумент - это текст, который вы хотите перевести, а второй аргумент - на какой язык вы хотите перевести.

надеюсь, вы найдете ответ полезным

...