如果我在计算机上全局安装了一个python包,然后将该包的位置添加到我的PATH变量中,那么我的命令行可以找到它,而无需每次执行时都键入完整的路径。
这是如何在虚拟环境中工作的?例如,我刚刚在项目的激活虚拟环境中使用了pip install ffmpeg
。我可以在我的venv/Lib/site-packages
文件夹中看到它,但我的命令行找不到它。我该如何在虚拟环境中等效于将ffmpeg
的位置添加到我的PATH变量中?
正如chepner在上面的评论中提到的,如果您已经激活了虚拟环境,这应该已经起作用了。您可以通过查看模块的__file__
来说服自己或仔细检查您从哪个位置运行:
激活虚拟环境之前:
>>> import pip
>>> print(pip.__file__)
C:Users...Anaconda3libsite-packagespip__init__.py
激活虚拟环境后:
>>> import pip
>>> print(pip.__file__)
C:Users...DocumentsResearch...envlibsite-packagespip__init__.py
请注意,我没有调整PATH
,pip
是从虚拟环境中运行的。
还要注意的是,__file__
不一定是为每个模块定义的。有关__file__
不适用于快速检查时选项的更完整视图,请参阅此答案。