파이썬 venv 가상환경 구축(+파이썬 버전 지정)

설치된 파이썬 버전 확인

일반적으로 파이썬 코드를 작성할 때 프로젝트 간에 패키지 충돌을 피하기 위해 가상환경을 사용하는 것이 좋습니다. 프로그래밍을 처음 시작 할 때에는 아나콘다를 통해 가상환경을 설정하는 방법을 사용했으나, 별도의 설치 과정과 무거운 느낌 때문에 현재는 파이썬에서 기본으로 제공하는 venv 를 사용하고 있습니다.
사용자에 따라 컴퓨터에 두 가지 이상의 파이썬 버전이 설치되어 있는 경우가 있는데, 이런 경우에는 특정 파이썬 버전을 명시적으로 지정해야 합니다. 이번 글에서는 이러한 상황에 대한 예시를 살펴보겠습니다.

다음 명령어는 Windows 운영체제에서 Visual Studio Code (VSCode)와 cmd 터미널을 이용하여 작성되었습니다.
환경에 따라 명령어가 동작하지 않을 수 있습니다.


가상환경 생성 및 활성화

1. 가상환경 생성

프로젝트 폴더를 생성한 후 프로젝트 최상위에서 명령어를 입력합니다.

python -m venv <가상환경 이름>
가상환경 생성 명령어
생성된 가상환경 폴더

왼쪽 탐색기 탭에서 venv1 폴더가 생성된 것을 확인할 수 있습니다.

2. 가상환경 활성화/비활성화

(입력 터미널마다 다를 수 있음.)

<가상환경 이름>\Script\activate    // 활성화
deactivate    // 비활성화
가상환경 활성화 명령어
활성화된 가상환경 이미지

venv1\Scripts 경로에 있는 activate 파일을 실행하면 명령창 앞에 (venv1)로 가상환경 활성화 상태를 확인할 수 있습니다.

3. 패키지 설치

(이 부분은 넘어가셔도 됩니다.)

pip install <패키지 이름>

가상환경 활성화 상태를 확인한 후 프로젝트에 필요한 패키지를 설치합니다.


기존 환경과 동일한 가상환경 구축하기

기존 가상환경을 새로운 가상환경(다른 컴퓨터 또는 다른 폴더)에서도 동일하게 구축하는 방법을 알아보겠습니다.

1. 기존 가상환경의 패키지 목록 출력

venv1가상환경이 활성화된 상태에서 명령어를 입력해줍니다.

pip freeze > requirements.txt
기존 가상환경의 패키지 목록 출력

위 명령어를 실행하면 venv1 가상환경에 설치된 모든 패키지와 버전이 requirements.txt 파일로 저장됩니다.

2. 새로운 가상환경 생성 및 활성화
python -m venv <가상환경 이름>
<가상환경 이름>\Script\activate

venv2이름의 가상환경을 설치 하고 활성화 상태를 확인합니다.

3. 저장된 패키지 목록으로 새로운 가상환경 구축

위에서 생성된 requirements.txt 파일을 venv2 가상환경으로 옮기고 실행합니다.

pip install -r requirements.txt
저장된 패키지 목록으로 새로운 가상환경 구축

새로운 venv2 환경에 requirements.txt 에 저장된 패키지가 설치됩니다.


파이썬 버전 지정 하는 법

가상환경의 파이썬 버전 확인

기존 환경(venv1, venv2)에서 파이썬 버전을 보니 python 3.9.13 버전으로 설치 되었습니다. 제 컴퓨터에는 python 3.9 버전, 3.11(64bit) 버전, 3.11(32bit) 버전 총 3가지 버전의 파이썬이 설치되어 있는데, 이 중 최신 버전인 3.11 버전을 지정하여 가상환경을 생성해보겠습니다.

1. 설치된 파이썬 버전 확인

먼저 아래 명령어를 통해 컴퓨터에 설치된 파이썬 버전을 확인합니다.

py --list
설치된 파이썬 버전 확인
2. 파이썬 버전을 지정하여 가상환경 생성

노란 박스에서 원하는 버전을 확인하고 아래 <버전>에 입력합니다. (-V:3.11-3.11 입력)

py -<버전> -m venv <가상환경 이름>
파이썬 버전을 지정하여 가상환경 생성
3. 가상환경의 버전 확인

새로 생성된 가상환경(venv3)을 활성화하여 원하는 버전이 정상적으로 설치되었는지 확인합니다.

python --version
가상환경의 버전 확인