uvのuvxはpipxのそれである


はじめに

  • 今回、uv/uvxやpipxの使い方自体には深入りしません

きっかけ

これまでの仮想環境の意義と課題

  • venv等の仮想環境を使うメリットとしてプロジェクトごとに独立地sた環境を作成することができてグローバルの環境が汚染されないこと
  • 一方でBlack 25.1.0 documentationといったフォーマッタは異なるプログラムでも一貫して使いたいモチベーションがあるはず

pipxの意義

Blackを専用の仮想環境にインストールし、それをユーザーのホームディレクトリ内で仮想環境をアクティベートせずに使用する手順を記します

mkdir -p ~/.local/bin
export PATH="$HOME/.local/bin:$PATH"
python -m venv black
black/bin/python -m pip install black
cp black/bin/black ~/.local/bin
black --version
black, 25.1.0 (compiled: yes)
Python (CPython) 3.13.2

pipxのリポジトリのトップには

独立した複数環境にPythonアプリケーションをインストールして実行する

という説明が記載されているとおりで先ほどのサンプルのような機能を実現するプロジェクトであると理解すれば良いと思います。

そしてハイパーモダンPythonの訳註には下記の記述があることから、uvxはuvにおけるpipxであるという解釈に落ち着いたのです。

uvにpipxの代替となるコマンドuvxがある。なお、uvxはuv tool runのエイリアスである。

参考文献

ハイパーモダンPython – O’Reilly Japan

,