原始问题:
一个词的多义词就是它所具有的感官数量。使用WordNet,我们可以 确定名词狗有len的七种感觉(wn.synsets('dog','n'))。 根据名词计算名词,动词,形容词和副词的平均多义词 到WordNet。
根据我从问题中收集到的内容,我在NLTK中使用内置的多义词方法与WordNet一起找出感官的数量。
更重要的是,我正在尝试使用所有可用的可用同义词并将其循环通过, 并将所有返回的值放入集合中。 在此之后,我本来打算添加新创建的集合中的所有同义集的总数(用整数填充)来接收总和。 获得此总和后,我会将总条目数除以接收平均值。
我最大的问题是......我将如何循环使用所有可用的同义词以及名词,动词,形容词和副词?
然而它返回的类型是“生成器”,我如何使用循环来迭代“生成器”类型?
。>>> allsynsets = wn.all_synsets('n')
>。>> allsynsets
< .generator对象all_synsets位于0x04359F30>
>。>>类型(allsynsets)
< .type'generator'>
我希望我提供了足够的信息,让任何人都可以找到这个问题的答案。 我没有源代码,除了导入和测试以了解此问题的生成器类型。
感谢您的时间。
答案 0 :(得分:2)
这些方法中的任何一个都应该起作用
list = [x for x in wx.all_synsets('n')]
或
for x in wx.all_synsets('n'):
print x
[edit]这会更多地谈论发电机(在网络上的许多其他来源) http://www.dalkescientific.com/writings/NBN/generators.html