← Back to Portal

【決定版】uvで爆速Python開発環境を構築!Windows11 + VSCode対応 | pip, venv, pyenvとの違いも解説

Published on "12/26/2025 13:11:14" by Ayato

【決定版】uvで爆速Python開発環境を構築!

Windows11 + VSCode対応 | pip, venv, pyenvとの違いも徹底解説

最終更新日: 2025年10月5日

Python開発者の皆さん、pip installの待ち時間にうんざりしていませんか?仮想環境はvenv、依存関係の固定はpip-tools、Python本体の管理はpyenv... とツールがバラバラで管理が大変だと感じたことはありませんか?

2024年、そんな悩みを一掃する画期的なツールが登場しました。高性能リンターRuffの開発元であるAstral社がリリースしたuvです。

uvがもたらす変化

Before

pip

venv

pip-tools

pyenv

ツールがバラバラで複雑...

After

uv

シンプルかつ強力!

uvは、Rustで書かれた超高速なPythonパッケージインストーラー兼マネージャーです。従来のツール群の機能をたった一つのコマンドに統合し、圧倒的なパフォーマンスで開発ワークフローを劇的に改善します。この記事では、uvに関するあらゆる疑問やトラブルを解決できるよう、以下の内容を網羅的に解説します。

この記事で完全に理解できること

目次

uvとは何か? なぜ今注目されているのか?

uvは単なる「速いpip」ではありません。Python開発におけるパッケージ周りの体験を根本から見直すツールです。その核心を理解するために、既存ツールとの関係を整理しましょう。

pip/venvとの違い、そしてpyenvとの正しい関係

よくある誤解は「uvを入れればpyenvは不要になる」というものですが、これは正しくありません。各ツールの役割は以下の通りです。

ツール 主な役割 uvによる代替
pip パッケージのインストール/アンインストール ◎ 完全に代替 (uv pip / uv add)
venv プロジェクト毎の仮想環境作成 ◎ 完全に代替 (uv venv)
pip-tools 依存関係の解決と固定(ロック) ◎ 完全に代替 (uv add / uv lock)
pyenv Python本体 (3.9, 3.10, 3.11...) のインストールと切り替え ✕ 代替不可 (役割が違う)

結論として、uvpipvenvを置き換えますが、Pythonインタプリタ自体を管理するpyenvとは共存する関係にあります。pyenvで使いたいPythonバージョンをインストールし、uvでそのバージョンの仮想環境を作成・管理するのが現代的なベストプラクティスです。

【独自検証】pipuvの速度を徹底比較

uvは速い」と言われますが、一体どれくらい違うのでしょうか。クリーンな環境で、代表的なライブラリをインストールする時間を計測してみました。

計測環境: Windows 11, Ryzen 7 5800X, 32GB RAM, Python 3.11.5

ライブラリ pip install ... uv pip install ... 速度向上率
pandas 21.5秒 1.8秒 約 11.9倍
fastapi[all] 15.8秒 1.2秒 約 13.1倍
torch (CPU版) 95.2秒 4.3秒 約 22.1倍

結果は一目瞭然。特に依存関係が複雑で巨大なライブラリほど、uvのキャッシュと並列処理の恩恵が大きく、開発サイクルが劇的に短縮されることがわかります。

PoetryPDMと何が違うの?

uvの登場以前から、PoetryPDMといった高機能なパッケージ管理ツールが存在しました。これらとuvはどう違うのでしょうか?

観点 uv Poetry / PDM
思想 既存ツール(pip)のドロップイン置換。 高速・シンプル。 プロジェクト管理全体を担うオールインワンツール。
パフォーマンス 圧倒的に高速 (Rust製) Python製のため、uvよりは遅い。
学習コスト 低いpipの知識が活かせる。 独自のCLIやpyproject.tomlの書き方を覚える必要がある。
機能 パッケージ管理に特化。 パッケージ公開、スクリプト実行など多機能。

PoetryPDMが多機能な統合開発環境を目指すのに対し、uv「パッケージ管理」というコアな部分を徹底的に高速化・効率化することに特化しています。このシンプルさと、既存のpipワークフローとの互換性の高さが、uvが爆発的に受け入れられている理由です。

実践! uv 環境構築ガイド

ステップ1: uvをWindows 11にインストールする

uvのインストールは非常に簡単です。PowerShellを開き、公式サイトで推奨されている以下のコマンドを一行実行するだけです。

powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

インストール後、PowerShellを再起動するか、新しいターミナルを開いて、以下のコマンドで正しくインストールされたか確認しましょう。バージョン番号が表示されれば成功です。

uv --version

ステップ2: プロジェクトの準備とVSCodeでの開始

次に、開発を行うプロジェクト用のフォルダを作成し、VSCodeで開きます。ここでは例としてmy-uv-projectという名前のフォルダを作成します。

mkdir my-uv-project
cd my-uv-project
code .

code .コマンドを実行すると、現在のフォルダがVSCodeで開きます。

ステップ3: uvによる仮想環境の構築と有効化

VSCodeが開いたら、統合ターミナルを開きます(ショートカット: Ctrl + @)。このターミナル上で、プロジェクト専用の隔離されたPython環境(仮想環境)を作成します。

uv venv

引数を省略すると、慣例的に.venvという名前の仮想環境が瞬時に作成されます。次に、この仮想環境を「有効化(アクティベート)」します。

.\.venv\Scripts\activate

コマンドを実行すると、ターミナルの行頭に(.venv)という表示が追加されます。これが仮想環境が有効になっているサインです。

ステップ4: VSCodeと仮想環境を正しく連携させる

ターミナルは仮想環境を使っていますが、VSCodeエディタ本体(コード補完やデバッグ機能)にも、どのPythonインタプリタを使うかを教えてあげる必要があります。

多くの場合、VSCodeが.venvフォルダを自動検出し、右下に通知を表示します。表示されない、または確実に設定したい場合は、以下の手動設定が確実です。

  1. コマンドパレット (Ctrl + Shift + P) を開きます。
  2. Python: Select Interpreter」と入力し、選択します。
  3. 表示されるリストから「+ Enter interpreter path...」を選択します。
  4. 「Find...」をクリックし、.venv\Scripts\python.exeファイルを選択します。


" alt="VSCodeのコマンドパレットで.venv内のpython.exeを選択し、Pythonインタプリタのパスを手動設定している画面" class="mt-4 mx-auto rounded-lg shadow-md" />

(VSCodeでPythonインタプリタのパスを選択する画面)

これで、VSCodeの全機能がプロジェクトの仮想環境と完全に連携し、コード補完やエラーチェックが正しく機能するようになります。

ステップ5: ライブラリをインストールする(依存関係の管理)

uvの真骨頂である、爆速パッケージインストールの時間です。uv addコマンドは、パッケージをインストールするだけでなく、プロジェクトの設定ファイル(pyproject.toml)とロックファイル(uv.lock)を自動で更新し、環境の再現性を担保してくれます。

例えば、データ分析で人気のrequestspandasをインストールしてみます。

uv add requests pandas

驚くほど速くインストールが完了するはずです。

💡 ヒント:既存プロジェクトからの移行

単にrequirements.txtの内容をインストールしたいだけなら、以下を実行します。
uv pip install -r requirements.txt

pip-toolsのように依存関係をuvで管理したい場合は、まず主要なライブラリをuv addし、その後uv lockuv syncコマンドで同期を取るのが良いでしょう。

ステップ6: 実践!FastAPIアプリを動かしてみる

構築した環境で、簡単なWebアプリケーションを動かしてみましょう。まず、fastapiとサーバーであるuvicornをインストールします。

uv add "fastapi[all]"

次に、main.pyファイルを作成し、以下のコードを貼り付けます。

# main.py
from fastapi import FastAPI

app = FastAPI()

@app.get("/")
def read_root():
    return {"message": "Hello, uv World!"}

最後に、ターミナルで開発サーバーを起動します。

uv run uvicorn main:app --reload

ターミナルに表示されたURL(例: http://127.0.0.1:8000)にブラウザでアクセスすると、メッセージが表示されるはずです!

❗ よくあるエラーと解決策

環境構築には予期せぬエラーがつきものです。ここでは、uvを使った開発で遭遇しがちな問題とその解決策を紹介します。

ケース1:AttributeErrorImportErrorが出る (PyTorchとNumPyの例)

PyTorch (torch) のような大規模ライブラリをインストールした際に、「numpy.core.multiarrayが見つからない」といったImportErrorAttributeErrorが発生することがあります。

原因:ライブラリ間のバージョン互換性

これは、ライブラリ間のバージョン互換性が原因です。特に2024年以降、科学計算ライブラリNumPyがバージョン2.0にメジャーアップデートしたことで、多くのライブラリで互換性の問題が発生しています。例えば、PyTorchの一部のバージョンは、まだNumPy 2.0に完全対応しておらず、NumPy 1.x系を要求します。

解決策:バージョンを明示的に指定する

uvでは、インストールするパッケージのバージョンを細かく指定できます。NumPy 2.0未満をインストールするには、以下のように実行します。

# "numpy<2.0" のようにバージョンを指定してインストールする
uv add "numpy<2.0" torch

【重要】後片付けの方法(アンインストール)

新しいツールを試す上で「きれいに元に戻せるか」は非常に重要です。uv関連の削除は目的別に3つに分けられます。

1. 仮想環境を丸ごと削除したい場合

プロジェクトが不要になったら、作成した.venvフォルダをファイルエクスプローラーから直接削除するだけです。これが最も簡単で確実です。

2. 特定のパッケージだけを削除したい場合

仮想環境は残しつつ、特定のライブラリだけをアンインストールするにはuv pip uninstallを使います。

# まず仮想環境を有効化
.\.venv\Scripts\activate

# pandasをアンインストール
uv pip uninstall pandas

3. uvツール自体をPCから削除したい場合

uvツールそのものが不要になった場合は、以下の専用コマンドでクリーンにアンインストールできます。

uv self uninstall

まとめ:なぜ今、uvを選ぶべきなのか

この記事では、uvを使った最新のPython環境構築手順を、ツール間の比較や具体的なエラー解決策、そして後片付けの方法まで含めて網羅的に解説しました。uvを導入するメリットは計り知れません。

Python開発の効率と体験を飛躍的に向上させるuv。ぜひ、あなたの次のプロジェクトから導入してみてはいかがでしょうか。

この記事を書いた人

著者のプロフィール画像

あやと@AI for All (id:ai-economy-analysis)

AIで情報分析・処理・生成を自動化し、未来を切り拓く。 ChatGPTが登場する以前から機械学習や深層学習などの情報工学を専攻し、AI活用の試行錯誤を重ねてきました。このブログは、AIによる情報自動化に特化した、私の「生きるポートフォリオ」です。

AIの可能性を信じる仲間と繋がりたいです。ご相談やご依頼も、お気軽にご連絡ください。

© 2025 Python Development Guide. All Rights Reserved.

uv 公式サイト | プライバシーポリシー