Python パッケージはどこにインストールされますか
-
pip
コマンドを使用して、インストールされているパッケージを一覧表示する -
conda
コマンドを使用して、ローカルにインストールされたパッケージを一覧表示する -
python
コマンドを使用して、インストールされているパッケージを一覧表示する -
distutils.sysconfig
モジュールを使用して、インストールされているパッケージを一覧表示する -
sysconfig
モジュールを使用して、インストールされているパッケージを一覧表示する
Python のパッケージは、Python ファイルを含むディレクトリとして定義できます。これらのファイルは通常 Python モジュールです。
プログラムが大きくなり、複雑になると、同様のモジュールがパッケージに配置されます。これにより、プログラムの管理が容易になり、読みやすさが向上します。このアプローチはしばしばモジュラープログラミングと呼ばれ、パッケージはそれを達成するのに役立ちます。
Python がファイルをパッケージと見なすには、ファイル __init__.py
がディレクトリ内に含まれている必要があります。このファイルには通常、パッケージの初期化コードが含まれていますが、空のままにしておくこともできます。
このチュートリアルでは、Python パッケージがインストールされているディレクトリを見つけるためのさまざまな方法について説明します。
pip
コマンドを使用して、インストールされているパッケージを一覧表示する
Python では、パッケージはグローバルとローカルの両方でインストールできます。
パッケージをグローバルにインストールすると、システム内のすべてのユーザーが利用できます。同じパッケージをローカルにインストールすると、手動でインストールしたユーザーのみが使用できます。
デフォルトでは、pip
コマンドはパッケージをグローバルにインストールします。
次のコードは、pip
コマンドを使用して、グローバルにインストールされているパッケージを一覧表示します。
# we can also use "pip list command"
pip freeze
デフォルトでは、pip
コマンドはパッケージをグローバルにインストールしますが、ローカルに手動でインストールされたパッケージもこのコマンドを使用して表示できます。
次のコードは、pip
コマンドを使用して、ローカルにインストールされているパッケージを一覧表示します。
# we can also use "pip list --user"
pip freeze --user
conda
コマンドを使用して、ローカルにインストールされたパッケージを一覧表示する
この方法は、AnacondaIDE で作業しているプログラマーに対してのみ機能します。conda
環境でローカルにインストールされたパッケージを一覧表示することができます。これを実行するには、Anaconda プロンプトに 1 行のコードを記述するだけです。
次のコードは、conda
を使用して、ローカルにインストールされているパッケージを一覧表示します。
conda list
python
コマンドを使用して、インストールされているパッケージを一覧表示する
python
コマンドを使用して、パッケージサイトのディレクトリを見つけることができます。
グローバルサイトパッケージ
グローバルサイトパッケージは、sys.path
にリストされていることがわかります。
次のコードは、python
コマンドを使用して、グローバルにインストールされたパッケージを一覧表示します。
python -m site
site
モジュールを python コマンドと一緒に使用して、パッケージのより適切で簡潔なリストを取得することもできます。このメソッドは、site
モジュールの getsitepackages()
を使用します。
次のコードは、python
コマンドと site
モジュールを使用して、グローバルにインストールされたパッケージを一覧表示します。
python -c 'import site; print(site.getsitepackages())'
getsitepackages()
関数は virtualenv では使用できないことに注意してください。
ローカルにインストールされたパッケージ
ローカルパッケージは、per-user
site-packages ディレクトリ(PEP 370)にインストールされます。
次のコードは、python
コマンドを使用して、ローカルにインストールされたパッケージを一覧表示します。
python -m site --user-site
distutils.sysconfig
モジュールを使用して、インストールされているパッケージを一覧表示する
distutils
パッケージを利用して、Python インストールに追加のモジュールをインストールおよび構築するための関数を提供できます。この場合、パッケージの一覧表示にも使用できます。
次のコードは、distutils.sysconfig
を使用して、グローバルにインストールされたパッケージを一覧表示します。
python -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())"
唯一の欠点は、dist-packages
のディレクトリまたはオペレーティングシステムによって自動的にインストールされたパッケージを指していることです。
sysconfig
モジュールを使用して、インストールされているパッケージを一覧表示する
Python 3 以降では、sysconfig
モジュールを使用して、インストールされているパッケージを一覧表示できます。
sysconfig
モジュールは、上記の distutils.sysconfig
サブモジュールと間違えられることはありません。後者はまったく異なるモジュールであり、ここで使用される get_paths
関数が不足しています。
次のコードは、sysconfig
モジュールを使用して、インストールされているパッケージを一覧表示します。
python -c "import sysconfig; print(sysconfig.get_path('purelib'))"
ここでは、pip
などのツールを使用して、標準の Python パッケージがインストールされる purelib
パスを使用します。
Vaibhhav is an IT professional who has a strong-hold in Python programming and various projects under his belt. He has an eagerness to discover new things and is a quick learner.
LinkedIn