原來的問題的整個系列(從NLTK)同義集的搜索:通過在Python NLP
一個字的多義是它有意義數。使用WordNet,我們可以用 確定名詞狗有len(wn.synsets('dog','n'))的七個感官。 根據 計算WordNet的名詞,動詞,形容詞和副詞的平均多義詞。
從我從問題中收集到的信息,我將在WordNet的NLTK中使用內置的多義詞方法來找出事物的感官數量。
更重要的是,我試圖使用所有可用的同義詞集並循環它們, 並將所有返回的值放入集合中。 在此之後,我打算添加新創建的集合中的所有同義詞總數(用整數填充)以接收總和。 我得到這筆款項後,我將劃分總數來獲得平均數。
我最大的問題是...我怎麼去循環通過所有可用的synsets,以及名詞,動詞,形容詞和副詞?
- 經過各種網站的研究,我發現「wn.all_synsets('n')」會返回所有可能的名詞同義詞。
然而,它返回的類型是一個「生成器」,我將如何去使用循環遍歷「生成器」類型?
。>>> allsynsets = wn.all_synsets( 'N')
。>>> allsynsets
< .generator對象all_synsets在0x04359F30>
。>>>類型(allsynsets )
< .TYPE「發電機」>
我希望我提供的信息足以讓任何人都可以找到答案這個問題。 除了導入和測試以瞭解此問題的生成器類型外,我沒有源代碼。
謝謝你的時間。
不要使用當你失去對函數list()的訪問時,變量的名字爲'list'。說到函數list(),如果你想讓一個生成器中的所有項目都作爲列表,你可以調用list(wx.all_synsets('n'))'。 – jamylak 2012-04-11 05:58:51
是的,這是真的......對不起,只是舉一個例子,並沒有考慮var名稱:P,但是沒有命名實際變量列表,並且列表()是將它轉換爲列表的更好方法,我猜也是。 –
2012-04-11 06:01:39
好的,謝謝你, 我在Python中嘗試了一些新東西,並且被真正卡住了,並且覺得我已經耗盡了所有可能的資源(當然,我知道的)。 再次感謝您! – JavaCup 2012-04-11 06:10:24