import matplotlib.pylplot as plt했더니
Traceback (most recent call last):
File "<pyshell#0>", line 1, in <module>
import matplotlib.pylplot as plt
File "C:\Users\김민경\AppData\Local\Programs\Python\Python38-32\lib\site-packages\matplotlib\__init__.py", line 109, in <module>
from . import _api, _version, cbook, docstring, rcsetup
File "C:\Users\김민경\AppData\Local\Programs\Python\Python38-32\lib\site-packages\matplotlib\cbook\__init__.py", line 31, in <module>
from matplotlib import _api, _c_internal_utils
ImportError: cannot import name '_api' from partially initialized module 'matplotlib' (most likely due to a circular import) (C:\Users\김민경\AppData\Local\Programs\Python\Python38-32\lib\site-packages\matplotlib\__init__.py)
이렇게 오류뜨네요 왜그런가요
1개의 답변이 있습니다.
from matplotlib import _api, _c_internal_utils
ImportError: cannot import name '_api' from partially initialized module 'matplotlib' (most likely due to a circular import) (C:\Users\김민경\AppData\Local\Programs\Python\Python38-32\lib\site-packages\matplotlib\__init__.py
에 원인이 나와 있는 걸로 보이네요.
matplotlib 모듈로 부터 _api를 import할 수 없는데, 순환 참조로 때문인 경우가 대부분이라고 되어 있고요.
순환 참조라는 것은 2개의 모듈이 서로 참조하고 있는 경우를 말하고요.
갑이 을을 참조하고 있는데, 을이 다시 갑을 참조하라는 식의 참조가 순환 참조가 되겠고요.
_api 와 _c_internal_utils 모듈이 서로 참조하고 있는건 아닌지 확인해 볼 필요가 있을 것 같네요.
그리고...
python 버전에 따라 import에 문제가 생기는 경우도 있기 때문에 가능한 최신 버전의 파이썬을 이용하는 게 좋을 것 같고요.
폴더명에 한글 사용시 encoding에 따라 오류가 발생할 수도 있기 때문에 잘 모를 경우에는 가급적 한글 이름이 없는 폴더가 사용에 오류를 줄일 수 있을거라 생각되고요.
참고로...
파이썬의 2 버전과 3 버전에 차이가 많기 때문에
2 버전에 맞는 문법인지, 3 버전에 맞는 문법인지도 잘 고려해서 코딩을 하셔야 합니다.
무조건 최신 버전이라 해서 2버전의 문법을 사용하고 있으면서 3버전의 최신 버전을 사용하는 건 맞지 않고...
2버전의 문법을 사용한다면 2버전의 최신 버전을,
3버전의 문법을 사용한다면 3버전의 최신 버전을 사용하는게 오류를 해결 할 수 있는 방법이 될 수 있을 거라 생각됩니다.