0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【uv】事始め

0
Last updated at Posted at 2026-03-28

Pythonの次世代のパッケージ・プロジェクト管理ツールであるuvに初めて触れてみました。
自分が後で見返す用の備忘録を残します。

インストール

インストールは以下のコマンドで実行。

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

インストール後、ターミナルを一度閉じて開きなおし、無事uvのインストールを確認。

$ uv  --version

事始め

自分なりに調べて、色々試してみた。

基本操作

ターミナルにuvとだけ打って実行すると、uvで実行可能なコマンドと、その解説を一覧で出しくれる。

$ uv

uvでPythonのインストール・アンインストールも可能とのこと

$ uv python install  # 最新バージョンのPythonをインストール

特定のPythonのバージョンを指定することも可能

$ uv python install 3.12

取得可能なPythonと、インストールされているPythonの一覧の取得

$ uv python list

仮想環境作成も可能。名前はデフォルトで.venvとしてくれる

$ uv venv

カレントディレクトリのスクリプトの実行。

$ uv run example.py

プロジェクト管理

uvによるプロジェクト管理や、pyproject.tomlファイルから依存関係を定義することができるそう。

新しいプロジェクトの作成。プロジェクトで使用するPythonのバージョンを指定するようにする。

$ uv init hello-world --python 3.12

確かめてみると、.gitignoreREADME.mdpyproject.tomlなどのファイルが自動で作成されていた。これは便利!

├── .gitignore
├── .python-version
├── README.md
├── main.py
└── pyproject.toml

依存関係の管理

ここからが凄いのだが、addコマンドを使用することで、依存関係をpyproject.tomlに追加し、さらに仮想環境へのインストールまで済ませてくれる。

$ uv add numpy
$ uv add pandas matplotlib seaborn  # 一度に複数指定可能

ライブラリのバージョンを指定することも可能。

$ uv add 'numpy==2.4.3'

このバージョン指定は、><も使用可能。

$ uv add 'numpy>2.3.0'

ライブラリのバージョンを変更したい場合も、同じようにaddコマンドで行える。

プロジェクト内の特定のライブラリをアップグレード。

$ uv lock --upgrade-package numpy

ライブラリのアンインストール。

$ uv remove numpy

これらのaddremoveコマンドは、それを実行するカレントディレクトリにあるpyproject.tomlを探して、依存関係の管理を行ってくれるそう。

Djangoのアプリケーション開発において、本番環境と開発環境で依存関係を分けて管理したい時にも、uvは使える。
開発環境にのみインストールしたいパッケージは、--devフラグを使用する。

$ uv add django  # 本番・開発両方必要
$ uv add --dev pytest  # 開発時のみ使用

アンインストール時も同じ

$ uv remove --dev pytest

uvの利点は、そのプロジェクトでどのような依存関係を使用しているのか、pyproject.toml一か所で管理できる点にあるそうだ。
なので、開発時にはrequirements.txtを使用するよりも、uv addコマンドを使用してどんどんライブラリを追加して、管理をuvに任せてしまうのが、効率のいいスマートな使用方法なのである。

感想

pip-toolsが最新だと思っていたのですが、今はもっと便利なものが現れているんですね!
今までuvの事を知らなかったので、調べてみたかいがありました。便利なツールはどんどん使っていきたいと思います。

0
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?