目前我正在尝试使用networkx将wordnet的一部分可视化到一个图形中。nltk.wordnet.synsets('girl')[0].tree(lambda s:s.hypernyms())
返回的输出如下所示:
[Synset('girl.n.01'),
[Synset('woman.n.01'),
[Synset('adult.n.01'),
[Synset('person.n.01'),
[Synset('causal_agent.n.01'),
[Synset('physical_entity.n.01'), [Synset('entity.n.01')]]],
[Synset('organism.n.01'),
[Synset('living_thing.n.01'),
[Synset('whole.n.02'),
[Synset('object.n.01'),
[Synset('physical_entity.n.01'), [Synset('entity.n.01')]]]]]]]],
[Synset('female.n.02'),
[Synset('person.n.01'),
[Synset('causal_agent.n.01'),
[Synset('physical_entity.n.01'), [Synset('entity.n.01')]]],
[Synset('organism.n.01'),
[Synset('living_thing.n.01'),
[Synset('whole.n.02'),
[Synset('object.n.01'),
[Synset('physical_entity.n.01'), [Synset('entity.n.01')]]]]]]]]]]
我的目标是用有向图来表示这个输出。
关键是Synset('entity.n.01')
应该是根节点,并且应该有一条从Synset('girl.n.01')
到Synset('entity.n.01')
和从Synset('organism.n.01')
到Synset('entity.n.01')
等的路径
这应该通过递归来解决吗?有人知道从嵌套列表等到以Synset('entity.n.01')
为根的图的解决方案吗?你知道吗
最后,我解决了这个问题,没有在synset上使用nltk树方法,而是使用递归函数遍历单词的同义词
这将返回您循环访问的列表的列表。你知道吗
相关问题 更多 >
编程相关推荐