Python 中翻译单词的最有效方法

Most efficient way to translate words in Python

您好,我想问一下您在下面看到的是否是翻译 python 中单词的最快、最有效的方法。我只需要从其他外语翻译成英语。将每种语言的词典分成一本词典会更有效,还是现在这样好?如果代码可以在 python 2.7 和 3.x 及更高版本中运行,那就太好了。在下面的代码中,我必须将 iteritems 更改为没什么大不了的项目。

#!/usr/bin/env python
# -*- coding: utf-8 -*-

dct = {'apple': ['apfel', 'pomme', 'manzana', 'jabłko'],
       'pineapple': ['ananas', 'ananas', 'piña', 'ananas']}


def translate(q):
    for eng_word, trans_list in dct.iteritems():
        for trans_word in trans_list:
            if trans_word == q:
                q = eng_word
                print q
                return q

query = 'pomme'

query = translate(query)

query = 'ananas'

query = translate(query)

print query

使用外来词为键、英文为值的字典。那么一行代码就可以在O(1)时间内完成翻译。

d = {'apfel': 'apple', 'jablko': 'apple', 'ananas': 'pineapple', 'manzana': 'apple', 'pomme': 'apple', 'pina': 'pineapple'}
print d["pomme"]