528

明らかな答えはvirtualenvとvirtualenvwrapperを使用することであることは知っていますが、さまざまな理由でそれを行うことができない/したくない.

では、コマンドを変更するにはどうすればよいですか

pip install package_name

pipデフォルト以外の場所にパッケージをインストールするにはsite-packages

4

17 に答える 17

716

--targetスイッチは、探しているものです。

pip install --target=d:\somewhere\other\than\the\default package_name

ただし、その場所から実際に使用するには、追加d:\somewhere\other\than\the\defaultする必要があります。PYTHONPATH

-t, --target <dir>
パッケージを <dir> にインストールします。デフォルトでは、これは <dir> 内の既存のファイル/フォルダーを置き換えません。
--upgrade を使用して、<dir> 内の既存のパッケージを新しいバージョンに置き換えます。


ターゲット スイッチが使用できない場合は、pip をアップグレードします。

Linux または OS X の場合:

pip install -U pip

Windows の場合 (これは問題を回避します):

python -m pip install -U pip
于 2013-10-16T13:10:54.900 に答える
361

使用する:

pip install --install-option="--prefix=$PREFIX_PATH" package_name

--ignore-installedこの新しいプレフィックスを使用して、すべての依存関係を強制的に再インストールするために使用することもできます。--install-optionto を複数回使用して、で使用できるオプションを追加できますpython setup.py install(--prefixおそらく必要なものですが、使用できるオプションは他にもたくさんあります)。

于 2010-05-26T19:59:36.967 に答える
46

多くの場合、Python パッケージのインストールには、いくつかの純粋な Python ファイルのみが含まれます。パッケージにデータ、スクリプト、実行可能ファイルが含まれている場合、これらは純粋な Python ファイルとは異なるディレクトリにインストールされます。

パッケージにデータ/スクリプト/実行可能ファイルがなく、Python ファイルを (およびを使用するときのように/python/packages/package_name数レベル下のサブディレクトリではなく)入れたいと仮定すると、1 回限りのコマンドを使用できます。/python/packages--prefix

pip install --install-option="--install-purelib=/python/packages" package_name

すべての (またはほとんどの) パッケージをそこに移動させたい場合は、~/.pip/pip.conf以下を含めるように編集できます。

[install]
install-option=--install-purelib=/python/packages

そうすれば、何度も指定する必要があることを忘れることはできません。

--prefixパッケージに含まれる実行可能ファイル/データ/スクリプトは、追加のインストール オプション ( / --install-data/--install-scriptsなど、詳細についてはカスタム インストールオプションを参照)を指定しない限り、デフォルトの場所に移動します。

于 2012-06-13T14:39:44.080 に答える
15

@Ian Bickingの回答に1点追加するだけです:

--userPython パッケージをリモート サーバーのホーム ディレクトリ (sudo ユーザー権限なし) にインストールする場合は、オプションを使用してインストール ディレクトリを指定することもできます。

例えば、

pip install --user python-memcached

このコマンドは、PYTHONPATH にリストされているディレクトリの 1 つにパッケージをインストールします。

于 2014-12-23T19:46:39.830 に答える
14

の新しいバージョンpip(8 以降) は、--prefixオプションを直接使用できます。

pip install --prefix=$PREFIX_PATH package_name

where$PREFIX_PATHは、lib、bin、およびその他の最上位フォルダーが配置されるインストール プレフィックスです。

于 2017-05-24T06:37:23.803 に答える
0

pip install /path/to/package/

が可能になりました。

これと-eor--editableフラグを使用する場合の違い-eは、パッケージを Python パスにインストールするのではなく、パッケージが保存されている場所 (つまり、ダウンロード フォルダー) にリンクすることです。

これは、パッケージを削除/別のフォルダーに移動すると、使用できなくなることを意味します。

于 2019-01-18T08:37:47.720 に答える