surepip — pipインストーラーのブートストラップ—Pythonドキュメント

提供:Dev Guides
< PythonPython/docs/3.8/library/ensurepip
移動先:案内検索

ensurepip — pipインストーラーのブートストラップ

バージョン3.4の新機能。



ensurepip パッケージは、pipインストーラーを既存のPythonインストールまたは仮想環境にブートストラップするためのサポートを提供します。 このブートストラップアプローチは、pipが独自のリリースサイクルを持つ独立したプロジェクトであり、利用可能な最新の安定バージョンがCPythonリファレンスインタープリターのメンテナンスリリースと機能リリースにバンドルされているという事実を反映しています。

ほとんどの場合、Pythonのエンドユーザーはこのモジュールを直接呼び出す必要はありません(pipはデフォルトでブートストラップされる必要があるため)が、Pythonのインストール時にpipのインストールがスキップされた場合は必要になることがあります(または仮想環境を作成する場合)またはpipを明示的にアンインストールした後。

ノート

このモジュールはインターネットにアクセスしませんpipをブートストラップするために必要なすべてのコンポーネントは、パッケージの内部パーツとして含まれています。


も参照してください

Pythonモジュールのインストール
Pythonパッケージをインストールするためのエンドユーザーガイド
PEP 453 :Pythonインストールでのpipの明示的なブートストラップ
このモジュールの元の理論的根拠と仕様。


コマンドラインインターフェイス

コマンドラインインターフェイスは、インタプリタの-mスイッチを使用して呼び出されます。

最も単純な呼び出しは次のとおりです。

python -m ensurepip

この呼び出しは、pipがまだインストールされていない場合はインストールしますが、それ以外の場合は何もしません。 インストールされているpipのバージョンが、少なくともensurepipにバンドルされているバージョンと同じであるようにするには、--upgradeオプションを渡します。

python -m ensurepip --upgrade

デフォルトでは、pipは、現在の仮想環境(アクティブな場合)またはシステムサイトパッケージ(アクティブな仮想環境がない場合)にインストールされます。 インストール場所は、次の2つの追加コマンドラインオプションを使用して制御できます。

  • --root <dir>:現在アクティブな仮想環境のルート(存在する場合)や現在のPythonインストールのデフォルトルートではなく、指定されたルートディレクトリを基準にしてpipをインストールします。
  • --userpipを、現在のPythonインストールのグローバルではなく、ユーザーサイトのpackagesディレクトリにインストールします(このオプションは、アクティブな仮想環境内では許可されていません)。

デフォルトでは、スクリプトpipXおよびpipX.Yがインストールされます(XYはensurepipを呼び出すために使用されるPythonのバージョンを表します)。 インストールされたスクリプトは、次の2つの追加コマンドラインオプションを使用して制御できます。

  • --altinstall:代替インストールが要求された場合、pipXスクリプトはインストールされません
  • --default-pip:「デフォルトのpip」インストールが要求された場合、2つの通常のスクリプトに加えてpipスクリプトがインストールされます。

両方のスクリプト選択オプションを指定すると、例外がトリガーされます。


モジュールAPI

ensurepip は、プログラムで使用するための2つの関数を公開しています。

ensurepip.version()
環境をブートストラップするときにインストールされるpipのバンドルバージョンを指定する文字列を返します。
ensurepip.bootstrap(root=None, upgrade=False, user=False, altinstall=False, default_pip=False, verbosity=0)

pipを現在の環境または指定された環境にブートストラップします。

root は、インストールする代替ルートディレクトリを指定します。 rootNoneの場合、インストールでは現在の環境のデフォルトのインストール場所が使用されます。

upgrade は、以前のバージョンのpipの既存のインストールをバンドルバージョンにアップグレードするかどうかを示します。

user は、グローバルにインストールするのではなく、ユーザースキームを使用するかどうかを示します。

デフォルトでは、スクリプトpipXおよびpipX.Yがインストールされます(XYはPythonの現在のバージョンを表します)。

altinstall が設定されている場合、pipXインストールされません

default_pip が設定されている場合、2つの通常のスクリプトに加えてpipがインストールされます。

altinstalldefault_pip の両方を設定すると、 ValueError がトリガーされます。

verbosity は、ブートストラップ操作から sys.stdout への出力レベルを制御します。

ノート

ブートストラッププロセスには、sys.pathos.environの両方に副作用があります。 代わりに、サブプロセスでコマンドラインインターフェイスを呼び出すことで、これらの副作用を回避できます。

ノート

ブートストラッププロセスは、pipに必要な追加モジュールをインストールする場合がありますが、他のソフトウェアは、これらの依存関係がデフォルトで常に存在すると想定すべきではありません(依存関係はpipの将来のバージョンで削除される可能性があるため)。