当前位置: 首页 > 面试题库 >

在NLTK 3.0中使用Wordnet从Synset提取Word

汪臻
2023-03-14
问题内容

不久前,SO上有人问如何使用NLTK的wordnet包装器检索给定同义词集的单词列表。这是建议的响应之一:

for synset in wn.synsets('dog'):
    print synset.lemmas[0].name

使用NLTK 3.0运行此代码将产生TypeError: 'instancemethod' object is not subscriptable

我尝试了每个先前提出的解决方案(上面链接页面上描述的每个解决方案),但是每个都抛出错误。因此,我想问:NLTK
3.0是否可以为同义词集列表打印单词?我将很感谢其他人在这个问题上可以提供的任何建议。


问题答案:

WordNet在NLTK 3.0中工作正常。您只是以错误的方式访问了引理(和名称)。尝试以下方法:

>>> import nltk
>>> nltk.__version__
'3.0.0'
>>> from nltk.corpus import wordnet as wn
>>> for synset in wn.synsets('dog'):
    for lemma in synset.lemmas():
        print lemma.name()


dog
domestic_dog
Canis_familiaris
frump
dog
dog
cad
bounder
blackguard
...

synset.lemmas是一个方法,没有__getitem__()方法(因此不可下标)。



 类似资料:
  • 我想为我的搜索引擎从数据库中提取一个基本的同义词列表。这包括通常拼写的名字,如Shaun vs.Shawn,Muhammad的不同变体,命名实体的首字母缩写,如United Nations(UN)或SARS(Severe acute respiratory syndrome)。 在提取之后,这个同义词列表将被放置在服务器中,并以这样的方式存储--相关术语/同义词的字符串。 示例 我使用了jaws

  • 问题内容: WordNet很棒,但是我很难在nltk中获得同义词。如果您在此处类似地搜索“ small”一词,则会显示所有同义词。 基本上,我只需要了解以下内容: 哪里的选项可以是化名和反义词,但是获取同义词的选择是什么? 问题答案: 如果您想要同义词集中的同义词(又称组成集合的引理),则可以使用以下命令获取它们:

  • WordNet是一个英语词典,类似于传统的词库,NLTK包括英语WordNet。 我们可以使用它作为获取单词,用法示例和定义含义的参考。 类似单词的集合称为lemmas。 WordNet中的单词是有组织的,节点和边是节点表示单词文本,边表示单词之间的关系。 下面我们将看到我们如何使用WordNet模块。 所有的Lemmas from nltk.corpus import wordnet as wn

  • 问题内容: 我想使用JSoup-framework提取此表,以将内容保存在“表”数组中。第一个tr-tag是表头。所有以下内容(不包括在内)均描述了内容。 我已经测试了这一个和其他一些,但是我没有让它们为我工作: 使用JSoup提取HTML表内容 问题答案: 这是一些示例代码,您如何仅选择标题: 你得到… 解析 文件 :(这里是和字符集,请参阅jsoup对铁道部的相关信息文件) 解析 网站 :(不

  • 当我试图从在线URL=forexalgerie.com中的表中获取数据时,我的目标是这些值: ...似乎我的代码一切正常: 但是结果包含表中的所有内容,除了我想要的值? 怎么了?

  • 我需要循环一些word文档,并从word文档中提取图像,并将其保存在单独的文件夹中。我尝试过将它们保存为超文本标记语言文档的方法,但它不太适合我的需求。 现在,我使用inlineshapes对象循环浏览图像,然后将它们复制粘贴到publisher文档上,然后将它们保存为图像。但是,在运行脚本时,我会遇到运行时自动化错误。对于使用Publisher运行时库,我尝试了早期绑定和晚期绑定,但都遇到了错误