Python : 가상 환경(Virtual Environment) 사용법 정리

Aurora·2025년 3월 25일
0

keyWord_modelTest

목록 보기
3/4
post-thumbnail

프로젝트마다 깔끔하게 환경 분리하고 싶을 때 씀
기본적으로 Window 기준이다.


목차

  1. 가상 환경이란?
  2. 가상 환경 생성 및 실행
  3. 패키지 설치 및 삭제
  4. pip 버전 낮을 때
  5. 가상 환경 비활성화
  6. 가상 환경 삭제
  7. 명령어 요약

1. 가상 환경(Virtual Environment)이란

  • 각 프로젝트마다 독립적인 파이썬 환경 만들어주는 기능
  • 패키지 충돌 안 나게 격리된 공간 제공

쓰면 좋은 이유

  • 프로젝트마다 패키지 버전 다르게 써도 충돌 없음
  • 파이썬 업데이트해도 전체 환경엔 영향 없음
  • 필요 없는 패키지 정리도 쉬움
  • 환경 깔끔하게 유지 가능

2. 가상 환경 생성 및 실행

1. 폴더 이동

cd C:\[프로젝트 경로]

2. 가상 환경 생성

python -m venv venv
  • "venv"는 가상 환경 이름. 아무 이름이나 써도 됨
  • 이렇게 하면 폴더에 "venv"라는 디렉토리 생김

폴더 구조 예시

C:\[프로젝트 경로]  
 ├── venv  
 ├── main.py  
 └── 기타 파일들...

3. 가상 환경 실행

운영체제마다 명령어 다름

Windows (PowerShell)

venv\Scripts\activate

Windows (CMD)

venv\Scripts\activate.bat

실행 성공하면 이렇게 뜬다

(venv) C:\[프로젝트 경로]>

앞에 (venv)가 붙는다.


3. 패키지 설치 및 삭제

패키지 설치

pip install requests beautifulsoup4

설치된 패키지 목록

pip list

패키지 삭제

pip uninstall requests beautifulsoup4

특정 패키지 정보 확인

pip show requests

예시 출력:

Name: requests  
Version: 2.32.3  
Location: C:\[프로젝트 경로]\venv\Lib\site-packages

4. pip 버전이 낮다면?

가상 환경 만들었는데 pip이 구버전일 수도 있음

pip 업그레이드

pip install --upgrade pip

에러가 나서 이렇게 했더니 업그레이드가 잘 되었다:

python.exe -m pip install --upgrade pip

버전 확인:

pip --version

예시 출력:

pip 25.0.1 from C:\[경로]\venv\Lib\site-packages\pip (python 3.13)

아예 만들 때 최신 pip으로 만들고 싶으면

python -m venv venv --upgrade-deps

이러면 처음부터 최신 pip이랑 setuptools 포함됨


5. 가상 환경 비활성화

작업 끝났으면 비활성화하고 빠져나옴

deactivate

"(venv)" 표시 사라지면 성공


6. 가상 환경 삭제

그냥 "venv" 폴더 삭제하면 됨

Windows (CMD)

rmdir /s /q venv

Windows (PowerShell)

Remove-Item -Recurse -Force venv

7. 명령어 요약

작업명령어
폴더 이동cd 프로젝트_경로
가상 환경 생성python -m venv venv
가상 환경 실행venv\Scripts\activate
패키지 설치pip install 패키지명
패키지 삭제pip uninstall 패키지명
설치된 패키지 확인pip list
패키지 정보 확인pip show 패키지명
pip 업그레이드pip install --upgrade pip
최신 pip 포함해서 생성python -m venv venv --upgrade-deps
가상 환경 비활성화deactivate
가상 환경 삭제rmdir /s /q venv
다시 실행할 때venv\Scripts\activate 후 python 파일명.py

필요할 때마다 꺼내 쓰려고 정리해뒀다

추가) 가상환경 안에서 패키지를 관리하는데도 가상환경 속에 패키지가 설치가 안 되는 등의 문제가 발생했다... 프러블슈팅은 따로 글을 작성할 예정

profile
개발에 애정을 쏟는 연구자입니다

0개의 댓글