from nltk.corpus import wordnet
syn=wordnet.synsets('cookbook')[0]
print syn.definition
Expected Output:
'a book of recipes and cooking directions'
Actual Output:
bound method Synset.definition of Synset('cookbook.n.01')
I am unable to pinpoint the error in my code which is causing the difference between the actual output and the expected output.
>>> from nltk.corpus import wordnet as wn
>>> wn.synsets('dog')[0]
Synset('dog.n.01')
>>> wn.synsets('dog')[0].definition
<bound method Synset.definition of Synset('dog.n.01')>
>>> wn.synsets('dog')[0].definition()
u'a member of the genus Canis (probably descended from the common wolf) that has been domesticated by man since prehistoric times; occurs in many breeds'
It's because Synset
object properties has been changed to Synset
functions, see https://github.com/nltk/nltk/commit/ba8ab7e23ea2b8d61029484098fd62d5986acd9c
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With