WordNet中单词的同义词集

时间:2019-04-24 19:16:45

标签: python nltk wordnet

我正在尝试使用python在Synsets中找到 WordNet (which is Lexical database for English)

这是我尝试查找同义词集的代码以及该同义词集的示例(作为参数传递):

 from nltk.corpus import wordnet
synonynm=wordnet.synsets('friend')[2]#? wt does[0] mean
synonynm.name() #related synonyms wrds
synonynm.definition() #definition of passed words
wordnet.synsets('friend')[0].examples()

当我使用索引 wordnet.synsets('friend')[0] wordnet.synsets('friend')[1] wordnet.synsets('friend')[2]

它给了我相同的输出,可以在这里查看

['he was my best friend at the university']

但是如果确实将花括号放空,则会显示错误[]

所以我只想知道

synonynm=wordnet.synsets('friend')[0]

还有这个

wordnet.synsets('friend')[1]

感谢您的指导

1 个答案:

答案 0 :(得分:2)

wordnet.synsets('friend')返回一个同义词集列表:

[Synset('friend.n.01'), Synset('ally.n.02'), Synset('acquaintance.n.03'), Synset('supporter.n.01'), Synset('friend.n.05')]

然后您可以通过其索引访问列表中的每个Synset,例如。列表中的第一个Synset是:

wordnet.synsets('friend')[0] # Synset('friend.n.01')
wordnet.synsets('friend')[0].name() # friend.n.01
wordnet.synsets('friend')[0].definition() # a person you know well and regard with affection and trust
wordnet.synsets('friend')[0].examples() # ['he was my best friend at the university']

这是一个代码段,为列表中的每个Synset打印名称,定义和示例:

from nltk.corpus import wordnet
for result in wordnet.synsets('friend'):
    print(result.name(), result.definition(), result.examples())

输出:

friend.n.01 a person you know well and regard with affection and trust ['he was my best friend at the university']
ally.n.02 an associate who provides cooperation or assistance ["he's a good ally in fight"]
acquaintance.n.03 a person with whom you are acquainted ['I have trouble remembering the names of all my acquaintances', 'we are friends of the family']
supporter.n.01 a person who backs a politician or a team etc. ['all their supporters came out for the game', 'they are friends of the library']
friend.n.05 a member of the Religious Society of Friends founded by George Fox (the Friends have never called themselves Quakers) []

请注意,在您的代码中,如果要在Synsets列表中获取索引2的示例,则应执行以下操作:

from nltk.corpus import wordnet
synonynm=wordnet.synsets('friend')[2]
synonynm.name() #related synonyms words
synonynm.definition() #definition of passed words
synonynm.examples()