インストール方法
🐧 Linux / macOS
curl -LsSf https://astral.sh/uv/install.sh | sh
🪟 Windows (PowerShell)
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"
📦 その他の方法
# pip経由
pip install uv
# Homebrew (macOS)
brew install uv
# Cargo (Rust)
cargo install uv
主な特徴
- pip、pip-tools、virtualenv等を単一ツールで置き換え
- 依存関係解決が10-100倍高速
- 自動仮想環境管理
- 複数Python版管理
- プロジェクト初期化機能
- クロスプラットフォーム対応
- 既存ワークフローとの互換性
基本コマンド
📦 パッケージ管理
# パッケージ追加
uv add requests
# パッケージ削除
uv remove requests
# 依存関係同期
uv sync
# ロックファイル更新
uv lock
🏠 環境管理
# 仮想環境作成
uv venv
# スクリプト実行
uv run script.py
# プロジェクト初期化
uv init my-project
基本ワークフロー
1
プロジェクト作成
新しいプロジェクトを初期化し、必要な設定ファイルを自動生成
uv init my-project
cd my-project
2
依存関係追加
必要なパッケージを追加し、自動で仮想環境を構築
uv add requests flask
3
開発開始
コードを書いて、uvで直接実行
uv run python main.py
4
依存関係管理
開発用パッケージの追加や環境の同期
uv add --dev pytest
uv sync
従来ツールとの比較
🆚
pip + virtualenv
- 依存関係解決10-100倍高速
- 仮想環境作成80倍高速
- 統合されたワークフロー
- より明確なエラーメッセージ
🆚
Poetry
- 同等の機能をより高速で提供
- 軽量なリソース使用
- 既存プロジェクトとの互換性
- pipとの互換インターフェース
🆚
Conda
- Pythonパッケージに特化
- より高速なインストール
- 標準Python生態系との統合
- 軽量な実行環境
実用的なTips
🔄 既存プロジェクトの移行
requirements.txtがあるプロジェクトも簡単にuvに移行できます
uv add $(cat requirements.txt)
🐍 Python版管理
複数のPythonバージョンを簡単に管理
uv python install 3.12
uv venv --python 3.12
📝 スクリプト実行
依存関係を含むスクリプトを直接実行
uv run --with requests script.py
🛠️ ツール管理
開発ツールをグローバルに管理
uv tool install ruff black
関連記事
🐍
Python フレームワークと便利なツール
Pythonの総合的なフレームワークとツールの解説
詳細を見る
⚡
FastAPI基本解説
高性能なPython Webフレームワークの基本を解説
詳細を見る
🎤
Whisper AI 実装ガイド
OpenAIのWhisperを使った音声認識システムの実装
詳細を見る