완성할 환경
이 글의 목표는 프로젝트 폴더 안에 .venv를 만들고, 그 환경에만 분석 패키지를 설치하며, 터미널과 VS Code가 같은 Python 인터프리터를 사용하도록 맞추는 것이다. 마지막에는 의존성 목록만으로 환경을 다시 만들 수 있어야 한다.
PDF의 Python 3.11은 강의 실습 환경의 예시다. 새 프로젝트는 무조건 최신 버전을 고정하지 말고, 사용할 라이브러리와 배포 환경이 지원하는 Python 버전을 먼저 확인해 선택한다.
1. Python 설치와 버전 확인
python.org의 공식 설치 프로그램이나 운영체제에서 신뢰하는 설치 방식을 사용한다. macOS에서 Homebrew를 사용한다면 PDF처럼 특정 버전의 formula를 설치할 수도 있지만, 그 버전은 프로젝트 요구사항에 맞춰 정한다. 이미 설치되어 있다면 먼저 터미널에서 확인한다.
python3 --version
python3 -m pip --version
py --version
py -m pip --version
명령은 Python 대화형 프롬프트가 아니라 셸 터미널에 입력한다. python -m pip 형태는 어느 Python 인터프리터에 패키지를 설치하는지 분명하게 해 주므로 단독 pip 명령보다 진단하기 쉽다.
2. 프로젝트 폴더와 가상환경 만들기
mkdir analysis-project
cd analysis-project
python3 -m venv .venv
source .venv/bin/activate
New-Item -ItemType Directory analysis-project
Set-Location analysis-project
py -m venv .venv
.\.venv\Scripts\Activate.ps1
활성화는 가상환경의 실행 파일 디렉터리를 현재 셸의 PATH 앞에 놓는다. 새 터미널을 열면 다시 활성화해야 한다. 활성화하지 않아도 가상환경의 Python 전체 경로를 직접 실행할 수 있지만, 입문 단계에서는 활성화 후 경로를 확인하는 방식이 실수를 줄인다.
Windows PowerShell에서 실행 정책 때문에 Activate.ps1가 차단될 수 있다. 조직 정책을 먼저 확인하고 허용되는 개인 PC라면 Python venv 공식 문서가 안내하는 다음 사용자 범위 설정을 검토한다.
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
가상환경은 절대 경로를 포함한 실행 스크립트를 가질 수 있어 일반적으로 이동하거나 복사하는 대상이 아니다. 다른 위치나 컴퓨터에서는 의존성 파일을 이용해 새로 만든다. 프로젝트 코드도 .venv 안에 넣지 않는다.
3. pip 준비와 최소 패키지 설치
이제부터는 macOS와 Windows 모두 활성화된 가상환경의 python을 사용한다. 설치 목적이 분명한 최소 패키지만 추가한다. 표 데이터를 다루는 첫 실습을 가정해 pandas 하나만 설치한다.
python -m pip install --upgrade pip
python -m pip install pandas
python -m pip show pandas
NumPy처럼 pandas가 필요로 하는 패키지는 pip가 함께 해결한다. 아직 쓰지 않을 시각화·머신러닝 패키지를 한꺼번에 설치하면 환경이 무거워지고 오류 원인을 찾기 어려워진다.
4. requirements 기록과 복원
python -m pip freeze > requirements.txt
pip freeze는 현재 환경에 설치된 패키지를 요구사항 형식으로 출력한다. 따라서 직접 설치한 pandas뿐 아니라 그 의존성까지 포함한 전체 환경 스냅샷에 가깝다. 직접 의존성만 별도로 관리하는 프로젝트 도구와 목적이 다르지만, 이 글에서는 작은 학습 환경을 동일하게 복원하는 단순한 방법으로 사용한다.
새 가상환경에서는 다음 명령으로 기록된 패키지를 설치한다.
python -m pip install -r requirements.txt
Git에는 requirements.txt를 커밋하고 가상환경은 제외한다. Python 버전에 따라 venv가 자체 ignore 파일을 만들 수도 있지만, 프로젝트 루트의 규칙을 명시적으로 유지하면 도구와 버전 차이를 줄일 수 있다.
.venv/
__pycache__/
*.pyc
5. VS Code 인터프리터 선택
VS Code에 Microsoft의 Python 확장을 설치하고 프로젝트 폴더를 연다. 명령 팔레트에서 Python: Select Interpreter를 실행한 뒤 프로젝트의 .venv 인터프리터를 고른다. 선택한 환경은 실행·디버깅·IntelliSense와 새 Python 터미널에 사용된다.
상태 표시줄의 Python 버전과 경로가 .venv를 가리키는지 확인한다. 이미 열어 둔 터미널은 이전 PATH를 유지할 수 있으므로 인터프리터를 바꾼 뒤 새 터미널을 연다. Jupyter Notebook을 사용한다면 노트북 우측 상단의 커널도 같은 환경인지 별도로 확인한다.
6. Python·pip·VS Code가 같은 환경인지 진단하기
which python
python -m pip --version
(Get-Command python).Source
python -m pip --version
python -c "import sys; print(sys.executable); print(sys.prefix != sys.base_prefix)"
인터프리터와 pip 경로에 프로젝트의 .venv가 포함되고 마지막 값이 True면 가상환경 Python이 실행 중이다. VS Code에서도 통합 터미널에 같은 명령을 실행해 결과를 비교한다.
ModuleNotFoundError와 pip 오류 체크리스트
☐ 에러가 난 터미널이나 노트북에서 sys.executable을 확인한다.
☐ 같은 인터프리터로 python -m pip show 패키지명을 실행해 설치 위치를 확인한다.
☐ VS Code의 선택 인터프리터와 노트북 커널이 .venv인지 확인하고 새 터미널·커널로 다시 실행한다.
☐ 설치 실패 로그에서 지원 Python 버전, 호환 wheel 유무, 네트워크·인증서·프록시 문제를 구분한다. 무조건 관리자 권한이나 sudo로 재시도하지 않는다.
☐ 환경을 이동했거나 경로가 깨졌다면 .venv를 수리하려 하지 말고 requirements로 재생성한다.
재현 가능한 최종 폴더 구조
analysis-project/
├── .gitignore
├── .venv/ # 로컬에서만 생성, Git 제외
├── requirements.txt # 환경 스냅샷, Git 포함
├── notebooks/
├── src/
└── README.md
저장소를 받은 사람은 지원되는 Python을 준비하고, 새 .venv를 만든 다음 requirements를 설치한다. 가상환경 디렉터리 자체를 전달하지 않으므로 운영체제와 절대 경로 차이로 인한 문제를 피할 수 있다.
핵심 체크리스트
☐ 프로젝트 지원 Python 버전을 확인하고 버전 명령으로 실제 설치를 검증했다.
☐ 프로젝트 루트에 .venv를 만들고 현재 셸에서 활성화했다.
☐ python -m pip를 사용하고 interpreter·pip 경로가 같은 .venv를 가리키는지 확인했다.
☐ .venv는 Git에서 제외하고 requirements.txt는 기록했다.
☐ VS Code 인터프리터와 노트북 커널을 프로젝트 .venv로 선택했다.
다음 글: 조건문과 Python의 참·거짓 판단
실습 환경이 준비되었으니 다음 글부터 Python 문법으로 데이터를 판단하고 가공한다. 먼저 if·elif·else와 Truthy·Falsy, 단락 평가, ==와 is의 차이를 실제 예제로 살펴본다.
참고 자료
Python 설치와 플랫폼별 사용 공식 문서 — macOS·Windows에서 Python을 설치하고 실행하는 기준 (2026-08-03 확인)
Python venv 공식 문서 — 활성화 명령, PowerShell 정책, 가상환경의 격리·재생성·비이동성 (2026-08-03 확인)
Python Packaging User Guide의 pip·venv 안내 — 프로젝트별 환경 생성, 패키지 설치와 requirements 사용 (2026-08-03 확인)
pip freeze 공식 문서 — 설치된 패키지를 requirements 형식으로 출력하는 명령 (2026-08-03 확인)
VS Code Python 환경 공식 문서 — Python: Select Interpreter와 터미널 환경 선택 (2026-08-03 확인)
VS Code Jupyter 공식 문서 — 노트북에서 선택한 Python 환경과 커널 확인 (2026-08-03 확인)
댓글 0
댓글을 불러오는 중…