Windows 에서 파이썬 가상환경을 구성하는 방법에 대한 기록을 남깁니다.

Windows에서 Python 가상환경 구성하기

Python 개발을 하다 보면 프로젝트마다 다른 패키지 버전이 필요할 때가 있다. 이를 관리하기 위해 Python 가상환경을 사용하는 것이 좋습니다. 이번 포스트에서는 Windows에서 Python 가상환경을 구성하고 사용하는 방법을 단계별로 진행해 봅니다.

1. Python pip Upgrade

pip install --upgrade pip

upgrade 중 위와 같은 오류메세지가 나온다면 이미지 하단의 설명과 같이 다음 명령을 실행합니다.

python.exe -m pip install --upgrade pip

2. 가상환경 생성

Python 가상환경을 생성하기 위해 Powershell 을 엽니다.

설치된 Python 확인

현재 Windows 에 설치된 Python 의 version 들을 확인합니다.

PowerShell

PowerShell 에서는 다음 방법 중 두가지를 사용합니다.

py -0

Get-Command python* | Select-Object Name, Version, Source

where python

Powershell 에서는 where python 이 작동하지 않네요.

Command Prompt

where python

Command Prompt 에서는 작동되네요.

새로 구성할 Python version 설치


Windows 에서 virtualenv 를 사용한 가상환경 관리는 MAC OS 와는 다르게 command 명령으로는 설치하지 못하고 Python 공식 site 로 이동하여 설치할 Version 을 Download 하여 직접설치를 해야하는 불편이 있네요.
대신 Custom 설치를 사용해서 Python 들을 찾기 쉬운곳에 한군데에 모아 놓을 수 있는 장점?은 있네요(제가 본래 Windows 사용자라 MAC 에는 약간 어색함이 있어요. ^^;).


저는 3.8 버전을 Download 받았습니다.

작업 디렉터리 설정

가상환경을 생성할 디렉터리로 이동합니다. 예를 들어, `D:\Python_Envs\envs` 디렉터리를 만들고 이동.

mkdir D:\\Python_Envs\envs

가상환경 생성

`virtualenv` 모듈을 사용하여 가상환경을 만듭니다. `virtualenv` 뒤에 가상환경의 이름을 지정합니다. 예를 들어, `Py38`라는 이름으로 가상환경을.. Python 3.8 version 으로 만든다.

cd C:\\Python_Envs\envs 
virtualenv Py38 --python=3.8  

3. 가상환경 활성화

가상환경을 활성화하여 해당 가상환경에서만 Python과 패키지들이 작동하게 합니다.

다음 명령어를 입력하여 가상환경을 활성화합니다.

PowerShell

Py38\\Scripts\\activate.ps1  

Command Prompt

Py38\\Scripts\\activate  

활성화되면 명령 프롬프트에 `(Py38)`라는 표시가 붙습니다. 이는 가상환경이 활성화되었음을 의미합니다.

4. 패키지 설치

가상환경이 활성화된 상태에서 `pip` 명령어를 사용하여 필요한 패키지를 설치할 수 있습니다. 예를 들어, `requests` 패키지를 설치하려면 다음과 같이 입력합니다.

pip install requests  

5. 가상환경 비활성화

작업을 마친 후 가상환경을 비활성화하려면 다음 명령어를 입력합니다.

deactivate  

6. 가상환경 삭제

가상환경을 더 이상 사용하지 않으려면 가상환경 디렉터리를 삭제하면 됩니다. 예를 들어, `Py38` 디렉터리를 삭제합니다.

PowerShell

rmdir Py38  

Command Prompt

rmdir /s /q Py38  

이렇게 하면 가상환경이 삭제됩니다.

마무리

이 단계를 통해 Windows에서 Python 가상환경을 손쉽게 구성하고 사용할 수 있습니다. 가상환경을 사용하면 프로젝트 간의 패키지 충돌을 피하고, 각 프로젝트에 필요한 패키지 버전을 독립적으로 관리할 수 있습니다.
이제 가상환경을 만들어 더욱 깔끔하고 효율적인 Python 개발을 하게 되었습니다!

행복한 고수되십시오.
WooGong ))*
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\

반응형

+ Recent posts