본문 바로가기
공부/딥러닝

2020년~ : python 2, numpy가 있는 아나콘다 가상환경 만들기

by 붕붕=33 2020. 3. 30.

 

2020년 이후 numpy에서는 python 2 버전을 지원하지 않는다.

따라서 pip install numpy 같은 명령어로 numpy를 설치할 수가 없다.

 

 

이미 python 2.7과 numpy가 설치된 아나콘다 가상환경이 있을 때

이 환경을 복사하여 새 아나콘다 가상환경을 만드는 법을 소개하겠다.

 

 

 

 

 

1. conda 명령어를 이용한 아나콘다 가상환경 복사

 

$ conda create -n <new_env_name> --clone <existing_env_name> 명령어를 이용하여

기존의 아나콘다 가상환경을 복사한다.

 

그리고 conda activate 명령어를 실행하여 새로 만들어진 가상환경을 활성화한다.

 

$ conda create -n py27_new --clone py27
$ conda activate py27_new

 

 

 

2. numpy를 제외한 나머지 패키지 삭제

 

새로 만들어진 py27_new 가상환경에서

numpy를 제외한 나머지 패키지는 삭제하려고 한다.

 

일일이 나머지 패키지를 삭제하는 것은 번거로우므로

requirements.txt 파일을 이용해 삭제할 수 있다.

 

먼저 pip freeze 명령어를 통해

현재 환경의 패키지 목록이 담긴 requirements.txt 파일을 생성한다.

 

$ pip freeze >> requirements.txt

 

 

 

텍스트 에디터(메모장 등)에서 requirements.txt 파일을 열어서

numpy 버전이 적힌 줄 앞에만 주석처리(#)를 해준다.

 

# numpy=X.X.X

 

 

 

 

수정된 requirements.txt 파일을 이용해 pip uninstall 명령어를 반복 실행한다.

 

매우 중요한 사항은 새로 만든 가상환경을 conda activate 명령어로 활성화하는 것이다.

이것을 깜박하면 base 환경에서 설치된 패키지들이 모조리 삭제되는 참사가 일어날 수 있다.

 

$ conda activate py27_new
$ pip uninstall -r requirements.txt -y

 

 

 

3. 필요한 패키지들을 설치 ( + 새로운 requirement_new.txt 파일을 통해 주석, 빈 줄 건너뛰고 설치)

 

이제 새로 만든 아나콘다 가상환경에 필요한 패키지들을 설치할 수 있다.

pip install 명령어를 이용할 수 있다.

 

 

만약 설치하려는 패키지들에 대한 새로운 requirement_new.txt 파일이 있다면

아래와 같은 명령어를 통해 한 줄의 명령어로 설치를 진행할 수 있다.

 

$ cat requirement_new.txt | cut -f1 -d"#" | sed '/^\s*$/d' | xargs -n 1 pip install

 

댓글