原始问题:
一个词的多义词是它所具有的意义的数量。使用 WordNet,我们可以通过 len(wn.synsets('dog', 'n')) 确定名词 dog 有七种含义。根据 WordNet 计算名词、动词、形容词和副词的平均多义词。
根据我从问题中收集到的信息,我将在 NLTK 中使用内置的多义方法和 WordNet 来找出某物具有的感官数量。
更重要的是,我正在尝试使用所有可用的同义词集并循环它们,并将所有返回的值放入一个集合中。在此之后,我打算添加新创建的集合(用整数填充)中所有同义词集的总数以接收总和。在我得到这个总和后,我会将条目总数除以得到平均值。
我最大的问题是……我将如何遍历所有可用的同义词以及名词、动词、形容词和副词?
- 在通过各种网站进行研究后,我发现 for "wn.all_synsets('n')" 将返回所有可能的名词同义词集。
但是它返回的类型是“生成器”,我将如何使用循环来迭代“生成器”类型?
.>>>allsynsets = wn.all_synsets('n')
.>>> 所有同义词集
<.generator object all_synsets at 0x04359F30>
.>>> 类型(allsynsets)
<.type '生成器'>
我希望我已经提供了足够的信息,让任何人都能找到这个问题的答案。我没有源代码,除了导入和测试来理解这个问题的生成器类型。
感谢您的时间。