web-dev-qa-db-ja.com

Pipはどこにパッケージをインストールしますか?

私はpipがインストールされているvirtualenvを起動しました。やった

pip3 install Django==1.8

そしてDjangoがダウンロードに成功しました。それでは、Djangoフォルダを開きます。フォルダはどこにありますか?通常、それは "ダウンロード"の中にあるでしょうが、私がvirtualenvの中でpipを使ってそれをインストールした場合、それがどこにあるのか私にはわかりません。

182
user2719875

pip virtualenv と共に使用すると、通常パッケージはパス<virtualenv_name>/lib/<python_ver>/site-packagesにインストールされます。

例えば、 venv_test with Python 2.7という名前のテストvirtualenvを作成し、Djangoフォルダーがvenv_test/lib/python2.7/site-packages/Djangoにあります。

63
khampson

ポピュラーな需要により、投稿された回答で提供されるオプション:

pip show <package name>はWindowsとmacOSの場所を提供します、そして私はどんなシステムでもあると思います。 :)

例えば:

> pip show cvxopt
Name: cvxopt
Version: 1.2.0
...
Location: /usr/local/lib/python2.7/site-packages
328
gdbj

デフォルトでは、Linuxでは、Pipはパッケージを/usr/local/lib/python2.7/dist-packagesにインストールします。

インストール中にvirtualenvまたは--userを使用すると、このデフォルトの場所が変更されます。 pip showを使用する場合は、正しいユーザーを使用しているかどうかを確認してください。そうしないと、pipは参照しているパッケージを表示できない可能性があります。

5
CognizantApe

Pythonインタープリターまたはスクリプトでは、次のことができます。

import site
site.getsitepackages() # list of global package locations

そして

site.getusersitepackages() #string for user-specific package location

サードパーティのパッケージ(コアPythonディストリビューションに含まれないパッケージ)がインストールされる場所。

BrewをインストールしたMacOS上のPythonでは、前者が出力します

['/usr/local/Cellar/python/3.7.4/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages']

前の回答で述べたように、pip showによって出力される同じパスに正規化されます。

$ readlink -f /usr/local/Cellar/python/3.7.4/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages
/usr/local/lib/python3.7/site-packages

リファレンス: https://docs.python.org/3/library/site.html#site.getsitepackages

0
flow2k