已解决:Python with venv - 使用 pip 下载的软件包未显示在“列表”中(在系统路径中下载...)

问题描述 投票:0回答:1

我已经阅读了关于这个主题的几个主题和文档,但找不到适合我的“简单”解决方案,因为我是 Python 的初学者。

我通过 venv(在 Windows 上)创建了一个 Python 虚拟环境,因为我遇到了“PATH”和 pip 包的一些问题。

我的 venv 是这样创建、激活和配置的:

(fortiupdate.venv) c:\[...]\fortiupdate.venv\Scripts>echo %PATH%
c:\[...]\fortiupdate.venv\Scripts;C:\Program Files (x86)\VMware\VMware vSphere CLI\Perl\site\bin;

(fortiupdate.venv) c:\[...]\fortiupdate.venv\Scripts>where python
c:\[...]\fortiupdate.venv\Scripts\python.exe

(fortiupdate.venv) c:\[...]\fortiupdate.venv\Scripts>where pip
c:\[...]\fortiupdate.venv\Scripts\pip.exe

当我安装一个软件包时:

pip install django

下载和安装都可以,但是“pip list”不会返回要安装/可用的 django 包。

我试过了:

(fortiupdate.venv) c:\[...]\fortiupdate.venv\Scripts>pip config list

:env:.target='C:\\Users\\[..]\\AppData\\Local\\Programs\\Python\\Python312\\Scripts'
global.index-url='https://<private_repo>/artifactory/api/pypi/pythonproxy/simple'

我确认软件包安装在“:env:.target”目录中,而不是“.venv/lib/site-packages”目录中

如果我可以在脚本中使用软件包,那么软件包安装在哪里对我来说并不重要。 但实际上,pip 将软件包安装在 .../APPData/... 中,但如果我尝试列出/使用它们,则在我的 .venv 目录中搜索它们!

我该如何解决此行为?

(我更喜欢使用 .venv 目录来通过 pip 下载包,但如果您有一个解决方案,可以在我执行 .py 脚本时使用 /AppData/ 中的包,那么这将是一个可接受的解决方法)

python python-3.x pip python-venv
1个回答
0
投票

有时我真的不明白为什么初学者会选择 VS Code 或其他需要创建虚拟环境的 IDE。尝试使用 pycharm,因为 virtualenv 工具与 PyCharm 捆绑在一起,因此用户不需要安装它。然后当你获得更多经验时,你就可以随时切换你的编辑器

© www.soinside.com 2019 - 2024. All rights reserved.