2023-01-06 13:13:26

파이썬에서 가장 많이 사용되는 가상환경 라이브러리는 venv와 virtualenv일 것입니다. 물론 저도 둘 다 써보았습니다. 예전에는 venv를 사용하다가 지금은 virtualenv를 사용하고 있습니다. venv는 파이썬 표준 라이브러리이기 때문에 별도로 설치할 필요가 없습니다. 반면, virtualenv는 외부 라이브러리이기 때문에 설치를 해줘야 합니다.

 

virtualenv와 venv 비교

virtualenv 공식 문서[1]에 의하면, venv는 virtualenv의 일부분을 가져가서 만든 모듈이라고 합니다. 따라서 venv는 virtualenv의 모든 기능을 다 포함하고 있지 않습니다. 

 

1) venv는 virtualenv에 비해 느립니다.

2) venv는 virtualenv에 비해 확장성이 떨어집니다.

3) venv에서는 파이썬 버전을 달리해서 가상환경을 만들 수 없습니다. 

4) pip로 업그레이드 할 수 없습니다.

 

저는 3번이 venv 대신 virtualenv를 써야하는 중요한 이유 중 하나라고 생각합니다.

 

virtualenv 라이브러리 설치

다음과 같은 명령을 터미널에서 실행하면 virtualenv를 설치할 수 있습니다. 

 

pip install virtualenv

 

virtualenv 가상환경 생성

가상환경을 만들고자 하는 경로로 이동하여 가상환경을 생성합니다. 만약 바탕화면에 있는 test 폴더에 가상환경을 만들고 싶다면, C:\Users\사용자명\Desktop\test 으로 이동하여 "virtualenv 가상환경이름" 명령을 실행하여 가상환경을 생성합니다. 저는 가상환경 이름을 보통 .venv로 합니다. 

 

cd C:\Users\사용자명\Desktop\test
virtualenv .venv

 

만약 가상환경에서 사용할 파이썬 인터프리터의 버전을 지정하고 싶다면 다음과 같은 명령어로 가상환경을 생성하시면 됩니다. 물론 해당 PC에 그 버전의 파이썬이 설치되어 있어야 합니다. 

 

virtualenv .venv -p python3.10.5

 

가상환경 활성화

가상환경을 생성한다고 가상환경에 들어간 것은 아닙니다. 가상환경을 활성화해줘야 합니다. 

 

call .venv/Scripts/activate

 

가상환경이 활성화되면, 현재 작업 경로 앞에 (.venv)가 표시될 것입니다. 이제 마음껏 이 가상환경에 필요한 라이브러리를 설치하고 파이썬 코딩을 진행하시면 됩니다. 

 

가상환경 비활성화

가상환경을 비활성화하고 싶을 때는 터미널에서 간단히 deactivate만 입력하면 됩니다.

 

deactivate

 

이제 앞에 있던 (.venv)가 사라졌을 것입니다. 

 

관련글

- [python] 파이참 venv 가상환경 만들고 간단한 예제 코드 실행하기 (window 10)

 

참고자료

[1] https://virtualenv.pypa.io/en/latest/

 

 

(이 글은 2023-01-06에 마지막으로 수정되었습니다)