Где pip устанавливает свои пакеты?
Я активировал virtualenv, на котором установлен pip. Я сделал
pip3 install Django==1.8
и Django успешно загружена. Теперь я хочу открыть папку Django. Где находится папка? Обычно это было бы в "загрузках", но я не уверен, где бы это было, если бы я установил его с помощью pip в virtualenv.
Ответы
Ответ 1
pip при использовании с virtualenv обычно устанавливает пакеты по пути <virtualenv_name>/lib/<python_ver>/site-packages
.
Например, я создал тест virtualenv с именем venv_test в Python 2.7, а папка django
находится в venv_test/lib/python2.7/site-packages/django
.
Ответ 2
По многочисленным просьбам, опция предоставляется посредством размещенного ответа:
pip show <package name>
предоставит расположение для Windows и macOS, и я предполагаю любую систему. :)
Например:
> pip show cvxopt
Name: cvxopt
Version: 1.2.0
...
Location: /usr/local/lib/python2.7/site-packages
Ответ 3
По умолчанию в Linux Pip устанавливает пакеты в /usr/local/lib/python2.7/dist-packages.
Использование virtualenv или --user во время установки изменит это местоположение по умолчанию. Если вы используете pip show
убедитесь, что вы используете правильного пользователя, иначе pip
может не увидеть пакеты, на которые вы ссылаетесь.
Ответ 4
В интерпретаторе или скрипте Python вы можете сделать
import site
site.getsitepackages() # list of global package locations
и
site.getusersitepackages() #string for user-specific package location
для местоположений, в которые установлены сторонние пакеты (те, которые не входят в основной дистрибутив Python).
На моем установленном Brew Python на MacOS прежние результаты
['/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