我激活了一个安装了pip的virtualenv。我所做的

pip3 install Django==1.8

Django下载成功。现在,我要打开Django文件夹。文件夹位于哪里?

通常它会在“下载”中,但如果我在virtualenv中使用pip安装它,我不确定它会在哪里。


当前回答

在Python解释器或脚本中,您可以这样做

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

and

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

对于安装第三方包(不在核心Python发行版中的)的位置。

在macOS上我的homebrew安装的Python上,前者输出

[' / usr /地方/地窖/ python / 3.7.4 /框架/ Python.framework /版本/ 3.7 / lib / python3.7 /网站”),

这规范化到由PIP输出的相同路径显示,如之前的回答中所述:

$ 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

其他回答

当与virtualenv一起使用时,PIP通常会将包安装在<virtualenv_name>/lib/<python_ver>/site-packages路径下。

例如,我用Python 2.7创建了一个名为venv_test的测试virtualenv, django文件夹在venv_test/lib/python2.7/site-packages/django。

pip show <包名>将提供Windows和macOS的位置,我猜任何系统。:)

例如:

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

默认情况下,在Linux上,Pip将包安装到/usr/local/lib/python2.7/dist-packages。

在安装过程中使用virtualenv或——user将改变这个默认位置。如果您使用pip show,请确保您使用的是正确的用户,否则pip可能看不到您引用的包。

最安全的方法是通过正在执行的特定python调用pip。如果直接运行pip show pip,它可能调用的pip与python调用的pip不同。例子:

$ python -m pip show pip
$ python3 -m pip show pip
$ /usr/bin/python -m pip show pip
$ /usr/local/bin/python3 -m pip show pip

下面的例子说明了它们的不同之处:

$ pip show pip

Location: /usr/local/lib/python3.9/site-packages

$ python -m pip show pip

Location: /Library/Python/2.7/site-packages

在Python解释器或脚本中,您可以这样做

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

and

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

对于安装第三方包(不在核心Python发行版中的)的位置。

在macOS上我的homebrew安装的Python上,前者输出

[' / usr /地方/地窖/ python / 3.7.4 /框架/ Python.framework /版本/ 3.7 / lib / python3.7 /网站”),

这规范化到由PIP输出的相同路径显示,如之前的回答中所述:

$ 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