uv
Summary:
UV는 Rust로 개발된 Python 패키지 및 프로젝트 관리 도구로, PIP보다 10배에서 100배 빠른 속도와 가상환경, 의존성 관리, Python 버전 관리 등의 통합적인 기능을 제공합니다. UV는 프로젝트 초기화 시 자동으로 가상환경을 생성하고 의존성을 체계적으로 관리하며, 병렬 처리, 전역 캐시 활용, HTTP/2 지원 등으로 성능을 최적화합니다. 설치와 실행도 간편하며 데이터 분석, 웹 개발, 기계학습 등 다양한 프로젝트에서 활용할 수 있습니다.
작업 | pip + venv | uv |
---|---|---|
프로젝트 초기화 | mkdir my-project cd my-project python -m venv .venv | uv init my-project cd my-project |
가상환경 생성 | python -m venv .venv | 자동 생성 (uv init 시) |
가상환경 활성화 | macOS/Linux: source .venv/bin/activate Windows: .venv\Scripts\activate | 자동 활성화 (패키지 설치/실행 시) |
패키지 설치 | pip install requests | uv pip install requests 또는 uv add requests |
의존성 관리 | pip freeze > requirements.txt pip install -r requirements.txt | uv pip freeze > requirements.txt uv pip install -r requirements.txt 또는 uv lock, uv sync |
패키지 실행 | python -m pytest | uv run pytest |
개발 의존성 설치 | pip install –dev pytest | uv add –dev pytest |
패키지 제거 | pip uninstall requests | uv pip uninstall requests 또는 uv remove requests |
패키지 업그레이드 | pip install –upgrade requests | uv pip install –upgrade requests |
Python 버전 관리 | 수동 설치 및 관리 | uv python install 3.11 uv run –python 3.11 script.py |
의존성 해결 | 순차적 처리 | 병렬 처리 (PubGrub 알고리즘) |
캐시 관리 | 프로젝트별 캐시 | 전역 캐시 시스템 |
디스크 공간 | 각 프로젝트별 복사본 | 하드 링크 사용으로 효율적 |
네트워크 최적화 | HTTP/1.1 | HTTP/2 지원, 연결 풀링 |
Enjoy Reading This Article?
Here are some more articles you might like to read next: