2017-02-22 18 views
0

我基本上正在查看一個結構以允許將多個字符串映射到相同的值。所以像將多個字符串映射到單個值的結構類型

Ford/Chrysler/Nissan ==> Cars 
Raspberry/Blackberry/Blueberry ==> Berry 
Apple/Mango/Bananas ==> Fruit 

所以我應該通過給出特定的單詞到達基類型。什麼是這種組合的最佳數據結構?由於在知道值時搜索密鑰不是一個好習慣。這意味着一個dict是沒有問題的。

也許所有上述similar的人都映射到相同的base type,如果你知道我的意思的哈希函數?

+1

香蕉是一種漿果:)林不知道我理解你的問題。當你有「福特」一詞或其他方式時,你想能夠獲得「汽車」嗎? – Nullman

+0

我不知道任何就緒的類,但您可以創建一個字典,其值是數組的鍵。例如'x = {'Ford':0,'Nissan':0,'Apple':1}'和'y = ['Cars','Fruit']'。 – user2027202827

+0

是的,當我有福特或日產那件事情時,我想去'汽車':)。順便說一句香蕉真的是漿果? 也可以用戶詳細說明嗎? – HighOnMeat

回答

0

嘗試使用枚舉

枚舉已經加入到了Python 3.4

或字典

d=dict() 
d['Car']=('Ford','Chrysler','Nissan') 
d['Berry']=('Raspberry','Blackberry','Blueberry') 
#if you want to add 
d['Car'] = d['Car']+('Volkswagen',) 
+0

我已經想到了,但儘管它是可行的,但它不是'正確'的方式來查看和使用字典 http://stackoverflow.com/questions/2568673/inverse-dictionary-lookup-in-蟒蛇 http://stackoverflow.com/questions/8023306/get-key-by-value-in-dictionary 可能我不得不使用這些方法,但如果有一個更好的數據結構,可以做到這一點,我耳熟能詳 – HighOnMeat

相關問題