Python開発がもっと楽になる!「uv run」でスーパーパワーを手に入れよう
こんにちは、AIテクノロジーについて分かりやすく解説するブログを書いているジョンです。プログラミング、特にPythonを使っていると、「このライブラリをちょっと試してみたいだけなのに、環境を準備するのが面倒だな…」と感じたことはありませんか?今日は、そんな悩みを解決してくれる魔法のようなツール、「uv run」についてご紹介します!
「uv」は、Pythonのプロジェクトや環境設定を驚くほど速く、そして簡単にしてくれるAstral社製のツールです。その中でも「uv run」という機能を使うと、プログラムを実行するのに必要なライブラリ(便利な機能が詰まった部品セットのようなもの)を、いちいち自分のパソコンに「正式にインストール」しなくても、その場限りで使えるようになるんです。開発者にとっては、まさに救世主のような存在ですね!
「uv run」の基本的な使い方
使い方はとってもシンプル。例えば、myfile.py
というPythonプログラムを実行したい場合、通常はこのようにコマンドを入力します。
uv run myfile.py
ただし、これだけだと、あなたのパソコンに既にインストールされているライブラリしか使えません。もしプログラムが、まだインストールされていない外部のライブラリを必要とする場合、エラーになってしまいます。
そこで登場するのが--with
というオプションです。これを使うことで、必要なライブラリをその場で指定して、プログラムと一緒に実行できるのです。
- ライブラリを1つだけ使いたい場合:
例えば、数値計算でよく使われる「NumPy」というライブラリが必要なら、以下のように書きます。uv run --with numpy myfile.py
- 複数のライブラリを使いたい場合:
「NumPy」と、グラフ作成で人気の「Matplotlib」の両方が必要なら、カンマ(,)で区切って指定します。uv run --with numpy,matplotlib myfile.py
- ライブラリのバージョンを指定したい場合:
Pythonでよく使われる書き方で、特定のバージョンを指定することもできます。uv run --with numpy==2.0 myfile.py
これだけで、uvが自動的に必要なものを準備してプログラムを動かしてくれるので、とっても便利ですよね!
裏側では何が起きているの?
では、--with
を使ってコマンドを実行したとき、uvは一体何をしているのでしょうか?その仕組みをこっそり覗いてみましょう。
- まず、uvはPyPI(パイピーアイと読みます。Pythonのライブラリがたくさん集まっている公式の倉庫のような場所)にアクセスして、あなたが指定したライブラリを探します。
- 見つけたら、あなたのパソコンにダウンロードします。
- ダウンロードしたライブラリは、キャッシュ(一度使ったデータを速く取り出せるように一時的に保管しておく場所)に保存されます。
- そして最後に、キャッシュに保存されたライブラリを使って、あなたのプログラムを実行します。
この仕組みのおかげで、面白いことが起こります。初めて使うライブラリを指定したときは、ダウンロードに少し時間がかかるかもしれません。でも、2回目以降は、既にキャッシュに保存されているものを再利用するため、一瞬でプログラムが起動するんです。これは本当に快適ですよ!
キャッシュの管理
ちなみに、このキャッシュはuvが自動で管理してくれますが、もし手動で空にしたい場合はuv cache clean
というコマンドで掃除できます。また、一時的にキャッシュを使わずに実行したい場合は、-n
というオプションを追加するだけでOKです。
手元のプロジェクトで「uv run」を使う
「uv run」は、インターネットからライブラリをダウンロードするだけでなく、あなたのパソコンに既にあるプロジェクト(例えば、Gitリポジトリからクローンしてきたソースコードなど)に対しても使えます。
プロジェクトのフォルダ内にpyproject.toml
という設定ファイルがあれば、そのフォルダに移動してuv run
コマンドを実行できます。いくつか使い方を見てみましょう。
- プロジェクト内の特定の機能を実行する:
プロジェクト名が「proj」で、その中の「cmd」というモジュールを実行したい場合。uv run -m proj.cmd
- エントリーポイントを実行する:
エントリーポイントとは、開発者があらかじめ設定しておいた「プログラム実行用のショートカット」のようなものです。もし「proj_cmd」という名前のエントリーポイントがあれば、こう書くだけです。uv run proj_cmd
- プロジェクトの環境でPython自体を起動する:
uv run python
と入力すると、そのプロジェクトが必要とするライブラリがすべて使える状態で、Pythonの対話モードが起動します。デバッグなどにとても便利です。
まとめ
今回は、Pythonの強力なツール「uv run」についてご紹介しました。必要なライブラリをその都度、一時的に用意してくれるので、自分の開発環境をクリーンに保ったまま、色々なプログラムやライブラリを気軽に試すことができますね。
個人的には、この「ちょっと試してみる」というハードルがぐっと下がるのが、一番の魅力だと感じています。新しい技術を学ぶときや、小さなアイデアを形にするときに、環境構築でつまずくことがなくなるのは、本当に嬉しいことです。皆さんもぜひ、この「uv run」で開発のスーパーパワーを手に入れてみてください!
この記事は、以下の元記事をもとに筆者の視点でまとめたものです:
Amp your Python superpowers with ‘uv run’