2023년 7월 8일 추가
네이버에서 이 글에 대한 유입량이 가장 많은 것을 알았습니다.
그리고 이 글이 가치가 있는지, 옳은 내용을 담았는지에 대해 다시 검토해보았습니다.

그렇게 다시 검토해보니, 이 글은 해답을 제시했지만 원인에 대한 파악이 제대로 되지 않아 혼동을 줄 수 있었습니다.

이 문제는 여러 버전의 파이썬을 동시에 설치했기 때문에 일어난 일입니다.
A라는 모듈이 순정 파이썬에는 설치되었지만, 미니콘다쪽에는 설치되지 않았던 것이죠.
맥북의 프로세서와는 별개의 문제였던 것입니다.

만약 제가 동일한 문제를 겪었다면 순정 파이썬은 모두 삭제하고, 미니콘다 혹은 아나콘다만 유지할 것입니다.
그게 아니라면 사용시마다 환경변수를 다시 편집해줘야 하는 불편함이 있기 때문입니다.

앞으로도 쓴 글에 대해 다시 검증하고, 확실한 내용을 담을 수 있도록 노력함을 다시 한 번 다짐합니다.

◼︎ Intro

아끼고 아껴 썼던 맥북 프로 2015를 어언 8년째..
배터리 관리를 잘못 했는지 10분만 지나도 방전이 되어버린다.
그래서! 얼마 전 M2 맥북 에어를 샀다.

가볍고 성능좋은 노트북에 싱글벙글 하다가
큰 문제를 맞딱뜨렸다.

바로, 파이썬에서 모듈을 불러오지 못하는 문제!

◼︎ 상황

맞딱뜨린 문제는 크게 두 가지로 정리할 수 있다.

1
2
(1) ImportError: No module named pandas
(2) File "<stdin>", line 1
  • (1) ImportError: No module named pandas
    해당 모듈을 찾을 수 없어, import 할 수 없다는 것이다.

  • (2) File “", line 1 파이썬이 이미 실행되어있는 상태에서, 파이썬을 다시 실행해 생기는 오류라고 한다. 보통 이 문구를 보면 exit() 문을 통해 문제가 되는 프로그램에서 나가면 해결이 되나.. 지금은 상황이 다르다.

◼︎ 문제 원인 추정

(1) 인텔 맥북 -> M실리콘 맥북 환경 차이

노트북을 바꾸면서 프로세서의 종류 또한 인텔에서 M실리콘으로 바뀌었다.
마이그레이션을 통해 이전 노트북에 있는 설정과 파일을 그대로 새 노트북으로 가져왔기 때문에
현재 프로세서와 맞지 않는 설정 혹은 프로그램 설치가 되었을 수도 있겠다고 생각했다.

(2) 모듈 설치 경로의 문제

terminal에서는 모듈을 import하고 사용하는 데 문제가 없다.
다만, VScode 등 다른 편집기들에서만 모듈이 import 되지 않는다.
그렇다면 모듈의 설치 경로를 인식하지 못하는 게 아닐까.. 싶다.

테스트를 원한다면 terminal을 실행 후, 아래의 명령어를 실행해보자.

1
2
3
4
(1) 파이썬 실행 : python
(2) 모듈 import(예시_pandas) : import pandas
(3) 해당 모듈의 메서드들을 실행해보자. 에러문구가 뜨지 않으면
    모듈 설치 자체는 잘 되어있다는 뜻.

◼︎ 해결

(1) 미니콘다 삭제 후 재설치

라이브러리들이 있는 미니콘다를 삭제 후 현재 프로세서에 맞는 버전으로 다시 설치해보기로 했다.
terminal을 열고, 미니콘다 삭제 명령어를 입력해준다.

1
* 미니콘다 삭제 : rm -rf ~/miniconda

그 외로, 아래 두 경로에도 설치되어있을 수 있으니, 찾아서 직접 삭제해보자.

  • /opt (숨김파일 보기 : finder에서 shift +command + . 키)
  • user/user명/opt/miniconda3
  • lib/miniconda3

이후, 콘다 사이트에서 미니콘다를 현재 프로세서에 맞는 것으로 재설치해준다.
(나는 Apple M1 64-bit 패키지 버전으로 다시 설치했다.)
Miniconda 설치 페이지

하지만 이걸로 해결되지는 않았다..

(2) 파이썬 삭제 후 재철치

파이썬의 버전이 꼬여 일어난 문제는 아닐까 하여 삭제 후 재설치를 진행했다.
살펴보니, 미니콘다에 설치된 파이썬 외로, 3.7버전과 3.10버전이 추가 설치되어있었다.

아래 경로에서 파이썬 삭제

  • /응용 프로그램 -> python 버전별 폴더
  • /Library/Frameworks/Python.framework/Versions -> 버전별 폴더

이로써, 미니콘다에 설치된 파이썬 외의 파이썬은 모두 삭제했다.

(3) 편집기 재실행 및 인터프리터 재선택

코드 편집기를 재실행시켜준 후, 코드를 실행해보자.
내 경우엔, 인터프리터를 다시 선택하라는 경고가 떴고, 미니콘다에 설치되어있는 파이썬 버전을 선택했다.
이후부터는 설치된 모듈이 잘 돌아간다!

◼︎ 후기

아직 설치한 라이브러리가 많지 않아, 프로그램 삭제 후 재설치라는 선택을 할 수 있었다.
하지만.. 설치된 게 많고, 엮여있는 게 많다면.. 생각하기도 싫다.
여튼 해결!

◼︎ 레퍼런스

  • 미니콘다 제거 : https://www.delftstack.com/ko/howto/python/uninstall-miniconda/#macos%25EC%2597%2590%25EC%2584%259C-miniconda-%25EC%25A0%259C%25EA%25B1%25B0
  • 미니콘다 설치 : https://docs.conda.io/en/latest/miniconda.html
  • MAC에서 숨김파일 보기 : https://macnews.tistory.com/5286
  • 파이썬 삭제하기 : https://investechnews.com/2021/06/25/mac-python-완전-삭제초기화하기/
  • vi 편집기 명령어 : https://blockdmask.tistory.com/25