如果我有一个包含setup.py
文件的 python 项目,我可以运行pip install --user -e .
. 这将安装安装文件中列出的所有要求,并将当前项目添加到我的 pip 列表中:
$ pip show project-name
Name: project-name
Version: 1.0.0
Summary: None
Location: /path-to-project/
Requires: matplotlib, numpy, scipy, ...
Required-by:
Run Code Online (Sandbox Code Playgroud)
默认情况下,这会添加\path-to-project\
到用户 PYTHONPATH 中,还是您必须手动执行此操作,以便您可以import project-name
从系统上的任何位置导入代码?
不,pip
不会改变PYTHONPATH
,你也不需要。pip
而是在安装项目时使用 Python 设置的标准路径。您无需进行任何更改,运行pip install --user
.
安装的项目-e
使用egg 链接文件并添加到.pth
标准位置的文件中。显示的位置列在一个project-name.egg-link
文件中(实际上只是一个用于跟踪包的元数据),并且相同的路径被添加到easy-install.pth
同一目录中的文件中。Python 会.pth
在启动时自动将文件中列出的任何路径添加到模块搜索路径中(这由site
模块处理)。
运行时也使用相同的一组标准路径来查找项目pip show
;该命令有效表明该项目已在 Python 模块搜索路径上,并已正确安装。
您可以通过运行来验证路径python -m site
。因为您使用--user
交换机安装了软件包,所以pip
使用的位置在那里显示为USER_SITE
路径。检查该路径以查找*.egg-link
和easy-install.pth
文件。