您好我想問下這是什麼,您看到下面是最快和最有效的方式來翻譯python中的單詞。我只需要從其他外語翻譯成英文。將字典分成每種語言的一本字典會更有效嗎?還是現在的方式是否好?如果代碼可以在python 2.7和3.x及更高版本中運行,那將會很好。在下面的代碼中,我必須將iteritems更改爲沒有什麼大不了的項目。最有效的方法來翻譯Python中的單詞
#!/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
如果你只需要翻譯成* *英語,你應該走另外一條路,所以你可以在固定時間內做到這一點(即,使用外來語的鍵在字典)。但是如果「相同」這個詞根據語言有兩個含義會發生什麼? – Casey
它只是翻譯第一場比賽。它應該是最快的方式嗎?我很有信心,在我的程序中不會有相同的詞(它只會用於程序目的的詞彙量非常有限) – Gunnm
好的。那麼,回答你的問題,不,這遠不是最有效的方式,因爲你可能每次都要掃描整個列表。 – Casey