2016-07-20 4 views
1

주기적으로 AttributeError: 'Synset' object has no attribute 'lower'이 표시됩니다. 내 코드, 하나 개의 파일에 모든 오류를 생성 :어떻게 Python/NLTK/Wordnet에서 비정상적인 오류 메시지를 피할 수 있습니까?

Synset('book.n.01') 
[Synset('book.n.01')] 
Traceback (most recent call last): 
    File "./map", line 124, in <module> 
    print print_nodes(word) 
    File "./map", line 98, in print_nodes 
    result.append(print_nodes(synonym), indentation_level + 2 * 
    File "./map", line 88, in print_nodes 
    synonyms = wordnet.synsets(root) 
    File "/usr/local/lib/python2.7/site-packages/nltk/corpus/reader/wordnet.py", line 1416, in synsets 
    lemma = lemma.lower() 
AttributeError: 'Synset' object has no attribute 'lower' 

초기 값은 내가 Synset('book.n.01') 의도 한 것으로 보인다. 그것이 실행되면 WordNet이 끌어 당기는 이웃에 대해 생각한 후에 실행되는 것처럼 보이지만 그것은 별개의 문제입니다.

'Synset' object has no attribute 'lower'을 유발하는 문제는 무엇이며 어떻게 해결할 수 있습니까?

답변

3

나는 당신이 뭘 하려는지 코드를 정말 좋아 보이거나 모르겠어요,하지만 NLTK wordnet howto 당신이 이미 알고있는 경우에 그 식별자 synset을 만드는 방법을 보여줍니다 :이 아무튼 경우

>>> from nltk.corpus.reader import wordnet as wn 
>>> book = wn.synset("book.n.01") 
>>> book 
Synset('book.n.01') 
>>> book.examples() 
['I am reading a good book on economics'] 

을 문제를 해결하려면 질문을 수정하고 파이썬 코드를 추가하여 문제를 일으키는 synset을 생성하십시오.