파이썬 형태소 분석 오류 질문입니다

from konlpy.tag import Twitter


twitter = Twitter()


print(twitter.nouns("중국 안후이성이 대홍수로 불어난 물을 방류하려고 제방을 폭파한 건데요."))

#↑코드↑



#↓오류내용↓

$ python text3.py

Traceback (most recent call last):

File "text3.py", line 1, in <module>

from konlpy.tag import Twitter

File "C:\Users\user\AppData\Local\Programs\Python\Python38\lib\site-packages\konlpy\init.py", line 11, in <module>

from konlpy.jvm import init_jvm

File "C:\Users\user\AppData\Local\Programs\Python\Python38\lib\site-packages\konlpy\jvm.py", line 8, in <module>

import jpype

File "C:\Users\user\AppData\Local\Programs\Python\Python38\lib\site-packages\jpype\init.py", line 20, in <module>

from ._core import *

File "C:\Users\user\AppData\Local\Programs\Python\Python38\lib\site-packages\jpype\_core.py", line 20, in <module>

from . import types as _jtypes

File "C:\Users\user\AppData\Local\Programs\Python\Python38\lib\site-packages\jpype\types.py", line 38, in <module>

from ._jarray import *

File "C:\Users\user\AppData\Local\Programs\Python\Python38\lib\site-packages\jpype\_jarray.py", line 213, in <module>

jcustomizer.applyCustomizerPost(jpype.JArray, _JArrayProto)

File "C:\Users\user\AppData\Local\Programs\Python\Python38\lib\site-packages\jpype\jcustomizer.py", line 166, in applyCustomizerPost

_applyCustomizerImpl(cls.dict, proto, sticky,

File "C:\Users\user\AppData\Local\Programs\Python\Python38\lib\site-packages\jpype\jcustomizer.py", line 148, in applyCustomizerImpl

setter(p, v)

File "C:\Users\user\AppData\Local\Programs\Python\Python38\lib\site-packages\jpype\_jcustomizer.py", line 167, in <lambda>

lambda p, v: type.setattr(cls, p, v))

TypeError: can't apply this setattr to jpype.JClass object



해결하려면 어떻게 해야하나요?

    3개의 답변이 있어요!

    • from konlpy.tag import Twitter

      해당 코드에서 아래와 같이 에러가 납니다.

      lambda p, v: type.setattr(cls, p, v))

      TypeError: can't apply this setattr to jpype.JClass object

      즉 import 할때부터 에러가 나는 것입니다. konlpy 라이브러리를 다시 설치해야합니다. 아니면 Twitter 클래스나 모듈에 문제가 있을 수 있습니다.

      Traceback (most recent call last):

      File "text3.py", line 1, in <module>

      from konlpy.tag import Twitter

      여기에서 해당 부분이 문제가 있음을 확인할 수 있습니다.

    • 안녕하세요.

      파이썬 3.8.4를 사용하시는 것 같습니다.

      버전을 3.8.5나 최신 혹은 그 이전버전으로 변경하시면 결과를 얻으실수 있습니다.

      참고로 twitter는 Okt로 이름이 변경된 관계로 아래와 같이 변경해서 사용하시는 것이 좋겠습니다.

      from konlpy.tag import Okt twitter = Okt() print(twitter.nouns("중국 안후이성이 대홍수로 불어난 물을 방류하려고 제방을 폭파한 건데요."))

      그럼 아래와 같은 결과를 출력해 줍니다.

      ['중국', '안후이성', '대홍수', '불어', '물', '방류', '제방', '폭파', '건데']

    • jpype 관련 에러일 것 같아요.

      import jpype jpype.getDefaultJVMPath()

      저는 위 명령어로 jpype가 제대로 작동하는지를 확인하는데요.

      맥을 쓰는 저는 pip로 jpype 설치, jdk 설치 및 JAVA_HOME 설정으로 사전작업으로 진행합니다.

      혹은 konlpy jpype 검색으로 도움을 받을 수 있을거라 생각합니다.