2013-07-15 113 views

回答

4

要檢測一個單詞是否是名詞,請嘗試此操作。

from nltk.corpus import wordnet as wn 
from nltk.corpus.reader import NOUN 

#this gives a synsets list of empty length, since there is no noun corresponding to 'propose' 
synsets = wn.synsets('propose', NOUN) 

if synsets.length == 0 : 
    print ' We found a pure NOUN' 

#this will give you a non empty synset list since 'iron' can be a NOUN too. 
synsets = wn.synsets('iron',NOUN) 

if synsets.length > 0 : 
    print 'Iron is also a noun other than verb' 

爲了解決第二部分 - 一個字可以有多種含義,你要定義你的意思是清楚的 - 有句話如hypernymy,holonymy,上下義,同義詞等之間的各種關係

同時找到與給定單詞最接近的含義,您可能需要找出單詞與每個單詞的同義詞之間的相似度,然後選取具有最高值的單詞。請參閱Wordnet中的LCH相似性和JCN相似性模塊,以獲取關於此的更多信息。

+0

我將嘗試使用此..謝謝! – Backue

+0

您的意思是:打印'我們發現了一個純粹的非名字' – Vladtn

+0

是的..正確..請不要錯過鍵:) –