Python개발 환경과 테스트

가상환경과 pip 기본

프로젝트별로 Python 실행 환경과 의존성을 분리하기 위해 venv와 pip를 어떻게 함께 쓰는지 정리합니다.

마지막 수정 2026년 3월 22일

기본 패턴

bash
python -m venv .venv
source .venv/bin/activate
python -m pip install requests

설명

  • Python 프로젝트를 여러 개 다루다 보면 가장 먼저 부딪히는 문제가 "프로젝트마다 필요한 패키지 버전이 다르다"는 점입니다. 가상환경은 이 문제를 프로젝트 단위로 분리해 줍니다.
  • venv는 해당 프로젝트 전용 Python 실행 환경을 만들고, pip는 그 환경 안에 필요한 패키지를 설치합니다. 즉 둘은 따로 노는 개념이 아니라 함께 쓰이는 기본 조합입니다.
  • 가상환경을 쓰면 시스템 전체 Python을 오염시키지 않고, 프로젝트마다 독립적인 dependency 집합을 유지할 수 있습니다. 협업과 재현성에서 특히 중요합니다.
  • 중요한 감각은 "Python 실행 파일도 환경마다 다를 수 있다"는 점입니다. 그래서 패키지 설치나 실행을 할 때 python -m pip처럼 현재 활성 환경에 묶어 쓰는 습관이 안전합니다.
  • Python 입문에서는 문법만큼 환경 분리가 중요합니다. 환경 관리가 불안정하면 코드가 맞아도 실행이 엉키기 쉽기 때문입니다.

빠른 정리

명령역할
python -m venv .venv프로젝트용 가상환경 생성
source .venv/bin/activate가상환경 활성화
python -m pip install ...현재 환경에 패키지 설치
핵심 효과프로젝트별 의존성 분리

주의할 점

전역 Python과 가상환경 Python을 섞어 쓰면 "설치한 줄 알았는데 실행 환경엔 없다" 같은 문제가 자주 납니다. 설치와 실행이 같은 환경을 보고 있는지 늘 함께 확인하는 편이 좋습니다.

참고 링크

2 sources