PythonGoogle翻译器教程展示了如何使用googletrans模块翻译Python中的文本。
Pythongoogletrans
是一个翻译文本的模块。它使用GoogleTranslateAjaxAPI来检测语言和翻译文本。
Pythongoogletrans列表语言
在第一个示例中,我们列出了支持的语言。
#!/usr/bin/python import googletrans print(googletrans.LANGUAGES)
该程序在Python字典中列出了所有支持的语言。
import googletrans
我们导入googletrans
模块。
print(googletrans.LANGUAGES)
我们打印googletrans.LANGUAGES
变量。
$ languages.py {'af': 'afrikaans', 'sq': 'albanian', 'am': 'amharic', 'ar': 'arabic', 'hy': 'armenian', 'az': 'azerbaijani', 'eu': 'basque', 'be': 'belarusian', 'bn': 'bengali', 'bs': 'bosnian', 'bg': 'bulgarian', 'ca': 'catalan', 'ceb': 'cebuano', 'ny': 'chichewa', 'zh-cn': 'chinese (simplified)', 'zh-tw': 'chinese (traditional)', 'co': 'corsican', 'hr': 'croatian', 'cs': 'czech', 'da': 'danish', ... }
在输出中,我们可以看到支持的语言。
Pythongoogletrans检测语言
googletrans
可用于检测语言。
#!/usr/bin/python from googletrans import Translator text1 = ''' A Római Birodalom (latinul Imperium Romanum) az ókori Róma által létrehozott államalakulat volt a Földközi-tenger medencéjében ''' text2 = ''' Vysoké Tatry sú najvyššie pohorie na Slovensku a v Poľsku a sú zároveŠjediným horstvom v týchto štátoch s alpským charakterom. ''' translator = Translator() dt1 = translator.detect(text1) print(dt1) dt2 = translator.detect(text2) print(dt2)
在示例中,我们有两个不同的文本。我们使用detect
方法来确定文本的语言。
from googletrans import Translator
我们导入用于翻译的Translator
。
text1 = ''' A Római Birodalom (latinul Imperium Romanum) az ókori Róma által létrehozott államalakulat volt a Földközi-tenger medencéjében ''' text2 = ''' Vysoké Tatry sú najvyššie pohorie na Slovensku a v Poľsku a sú zároveŠjediným horstvom v týchto štátoch s alpským charakterom. '''
这是要翻译的两个文本。第一个是匈牙利语,第二个是斯洛伐克语。
translator = Translator()
创建了Translator
实例。
dt1 = translator.detect(text1) print(dt1)
我们使用detect
确定文本的语言并将结果打印到控制台。该方法打印语言和置信度值,即正确猜测语言的概率。
$ ./detecting.py Detected(lang=hu, confidence=1.0) Detected(lang=sk, confidence=1.0)
正确检测到两种语言。
Pythongoogletrans简单翻译
翻译是用Translator的
translate
方法完成的。
#!/usr/bin/python from googletrans import Translator translator = Translator() translated = translator.translate('ÐоÑодиÌнÑкое ÑÑажеÌние') print(translated.text)
如果我们没有指定源语言和目标语言,googletrans
会尝试检测语言并将其翻译成英语。
translated = translator.translate('ÐоÑодиÌнÑкое ÑÑажеÌние')
我们翻译俄语文本。我们得到一个翻译后的对象。
print(translated.text)
为了获得翻译,我们打印翻译对象的text
字段。
$ ./simple.py Battle of Borodino
源语言和目标语言
在下面的示例中,我们指定了源语言和目标语言。
#!/usr/bin/python from googletrans import Translator translator = Translator() translated = translator.translate('svÃzelná situace', src='cs', dest='hu') print(translated.text)
该示例将捷克语文本翻译成匈牙利语。
translated = translator.translate('svÃzelná situace', src='cs', dest='hu')
源语言由src
选项指定,目标语言由dest
选项指定。
$ ./source_dest.py bizonytalan helyzetben
Pythongoogletrans翻译列表
我们可以翻译一系列文本。
#!/usr/bin/python from googletrans import Translator translator = Translator() data = ['Dobrý deÅ', 'majestátny orol', 'krehká dohoda'] translated = translator.translate(data, src='sk', dest='en') for trans in translated: print(f'{trans.origin} -> {trans.text}')
在示例中,我们翻译了Python列表中的三个文本值。
$ ./translate_list.py Dobrý deŠ-> Good day majestátny orol -> majestic eagle krehká dohoda -> fragile agreement
列出所有Python教程。