pip 활용 (기본 가상환경 설정)

bash
# Debian 계열 Linux OS 기준 패키지 설치 (딱 한 번만)
sudo apt install python3-venv python3-full

# 프로젝트 폴더 내부에 .venv라는 이름으로 가상환경 생성
python3 -m venv .venv

# 생성된 가상환경 활성화하여 거기로 들어가기 (Lubuntu/Bash 기준)
source .venv/bin/activate

# pip 최신화 및 필수 패키지 설치
python3 -m pip install --upgrade pip
python3 -m pip install ipykernel jupyter

# 기본 패키지 (예: numpy, matplotlib) 설치
pip install -r requirements.txt

# 현재 사용 중인 파이썬 경로 및 버전 확인
which python3
python3 -V
python3 -m pip list

# Quarto와 Jupyter가 동일 환경을 사용하도록 Jupyter kernel을 등록
# 이 명령어는 "지금 내가 쓰고 있는 이 가상환경의 파이썬을 앞으로 project-test라는 이름으로 부를게!"라고 Jupyter 시스템(전역)에 등록하는 절차입니다. 덕분에 VS Code에서 가상환경을 매번 수동으로 잡지 않아도 커널 목록에서 바로 선택할 수 있게 된 것이죠.
python -m ipykernel install --user --name project-test
# VS Code 설정: Ctrl + Shift + P를 눌러 Python: Select Interpreter를 선택한 뒤, 생성한 .venv 내부의 파이썬을 지정해 주


# 커널 목록 확인
jupyter kernelspec list

# test 커널 삭제
jupyter kernelspec uninstall project-test

UV 활용 (고속 패키지 관리)

uv는 Rust로 작성되어 pip보다 수십 배 빠르며, 프로젝트 관리를 훨씬 단순화해 줍니다.

uv는 강제로 Git을 연결하려 하지만, pip은 사용자가 원할 때 git init을 할 수 있는 자유를 줍니다.

bash
# 기존 가상환경 및 설정 파일 삭제 (깔끔한 실습을 위해)
rm -rf .venv uv.lock pyproject.toml

# uv 설치 스크립트 실행
curl -Ls <https://astral.sh/uv/install.sh> | sh

# 설치 후 터미널 재시작 또는 환경변수 적용 (필요 시)
source $HOME/.cargo/env

# 프로젝트 초기화 (pyproject.toml 및 .venv 자동 생성)
uv init

# 필요한 패키지 추가 (자동으로 .venv에 설치됨)
uv add ipykernel jupyter
# (선택 사항) requirements.txt가 있다면 한 번에 설치 가능
uv pip install -r requirements.txt

# Quarto 연동을 위한 Jupyter 커널 등록
# uv run을 사용하면 해당 환경 내의 파이썬으로 명령을 실행합니다.
uv run python -m ipykernel install --user --name project-test

# 설치된 패키지 리스트 확인
uv pip list