uvによるPythonのバージョン管理とパッケージ管理
本記事の概要
本記事では、Pythonのバージョン管理やパッケージ管理のためのツールであるuvについて解説します。具体的には、uvのインストール方法、基本的な使い方、プロジェクト管理の方法などをWindows環境での実行例を交えながら説明していきます。
uvとは
uvは、Pythonのバージョン管理とパッケージ管理を効率的に行うためのツールで、Rustで実装されています。高速性と使いやすさが特徴であり、従来のpipやvenv、poetryなどのツールに代わる存在として注目されています。
前提とする環境
本記事において前提としている環境を次に示します。
- OS: Windows 11
- バージョン: 23H2
- 64ビットオペレーティングシステム、x64ベースプロセッサ
uvのインストール方法
uvをインストールするには、コマンドプロンプトを起動し、次のコマンドを実行します。
pip install uv
なお、インストール方法は他にも提供されており、公式ガイドで詳しく解説されています。
インストールが完了したら次のコマンドを実行して正常にインストールできていることを確認します。
uv
期待される出力:
An extremely fast Python package manager.
Usage: uv [OPTIONS] <COMMAND>
Commands:
run Run a command or script
init Create a new project
add Add dependencies to the project
remove Remove dependencies from the project
sync Update the project's environment
lock Update the project's lockfile
export Export the project's lockfile to an alternate format
tree Display the project's dependency tree
tool Run and install commands provided by Python packages
python Manage Python versions and installations
pip Manage Python packages with a pip-compatible interface
venv Create a virtual environment
--- 以下、省略 ---
Pythonバージョン管理における主要なコマンド
Pythonバージョン管理における主要なコマンドとしては、次のようなものがあります。
# Pythonのインストール
uv python install
# インストール済みのPythonバージョンの確認
uv python list
# Pythonの実行可能ファイルの検索
uv python find
# Pythonのバージョン変更
uv python pin
インストールとバージョン変更の実行例:
# インストールの実行例
uv python install 3.12
# バージョン変更の実行例
uv python pin 3.12
詳細は公式ガイドに記載されています。
プロジェクト管理の基本的な手順
プロジェクト管理のための基本的な手順を説明します。
まず、コマンドプロンプト上で次のコマンドを順番に実行し、新規プロジェクトを作成します。
# ディレクトリを配置する場所に移動する
cd C:\Users\username\Projects
# 新規プロジェクトの作成
uv init my-project
新規プロジェクトを作成すると、次のファイルが生成されます。
└─my-project
hello.py
pyproject.toml
README.md
生成されたpyproject.toml
は次のようになっています。
[project]
name = "my-project"
version = "0.1.0"
description = "Add your description here"
readme = "README.md"
requires-python = ">=3.12"
dependencies = []
使用したいPythonのバージョンが決まっている場合は、pyproject.toml
の次の箇所を書き換えます。
requires-python = ">=3.12"
書き換えたpyproject.toml
の内容を反映するにはuv sync
を実行します。なお、uv sync
を実行すると仮想環境として.venv
が作成されます。
uv sync
パッケージを追加したい場合はuv add
を使います。
uv add seaborn
再度、uv sync
を実行し、反映させます。
uv sync
uv sync
で同期するとpyproject.toml
に変更が適用されます。
[project]
name = "my-project"
version = "0.1.0"
description = "Add your description here"
readme = "README.md"
requires-python = ">=3.12"
dependencies = [
"seaborn>=0.13.2",
]
その他の詳細は公式ガイドのCreating projectsのページやWorking on projectsのページに記載されています。
仮想環境の作成とactivate~deactivate
uvによる仮想環境の作成とactivate~deactivateの操作は次の記事で解説しています。
スクリプトの実行
スクリプトの実行には、次のコマンドを実行します。
# スクリプトの実行
uv run
# 具体例
uv run example.py
詳細は公式ガイドに記載されています。
まとめ
本記事では、Pythonのバージョン管理とパッケージ管理のためのツールであるuvについて、以下の内容を解説しました。
- uvの概要
- インストール方法
- Pythonバージョン管理における主要なコマンド
- プロジェクト管理の基本的な手順
- スクリプトの実行方法
uvは、従来のツールと比較して高速で直感的な操作が可能であり、特にプロジェクト管理における依存関係の管理が簡潔に行えます。Pythonの開発環境構築やプロジェクト管理において、uvは有効な選択肢の一つになると考えられるため、今後のアップデートや機能追加に注目していきたいです。
参考記事
Discussion