微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在 Visual Studio Code 中将 Python 包安装到虚拟环境中的问题

如何解决在 Visual Studio Code 中将 Python 包安装到虚拟环境中的问题

虽然我很享受在 Visual Code 中使用 Python 进行开发,但我发现管理虚拟环境和包令人沮丧,尤其是在正确的位置安装包时遇到了困难。这是我的步骤顺序,以及我当时遇到的问题 - 我想知道是否有人可以告诉我我哪里出错了?还是我真的需要包含完整的 Python 路径?

所以首先我创建一个新的虚拟环境:

enter image description here

我可以看到这是有效的:

enter image description here

然后我选择在这个新的虚拟环境中使用 Python 解释器(我不太明白为什么我必须这样做 - 当然这应该作为激活过程的一部分发生 - 但我可以忍受它):

enter image description here

在屏幕的左下角,我得到了一个令人欣慰的事实:我使用的是正确的 Python 解释器:

enter image description here

然后我安装一个包(我随机选择了请求或多或少):

enter image description here

但是,这是在我的认 Python 位置进行的。为了在我的新虚拟环境中使用它,我似乎必须包含 Python 解释器的完整路径:

enter image description here

这不可能是正确的,虽然它确实有效 - 我现在可以看到已安装的包:

enter image description here

有人可以帮忙吗?

解决方法

就我个人而言,我没有使用 PowerShell 的运气(由于运行 PowerShell 脚本的权限),所以我在 VS Code 中使用命令提示符。

对于 PowerShell,或许可以使用 Scripts\activate.ps1 激活您的环境。从文档中: https://docs.python.org/3/library/venv.html

# PS C:\> <venv>\Scripts\Activate.ps1
StackOverflowExample\Scripts\Activate.ps1

在 VSCode 中选择解释器和用于将软件包安装到虚拟环境中的不同命令提示符/Power Shell 终端有点令人困惑。

另一个令人困惑的地方是运行 StackOverflowExample\Scripts\activate 并不表示您做错了什么。

,

我同意杰森库克的观点。 activate.bat 用于在 Cmd 中激活环境,您应该使用 Activate.ps1 而不是 activate.bat

但是您不需要自己激活环境。当你新建终端时,Python 扩展可以选择合适的为你激活环境。

选择解释器后,需要新建一个终端。一般来说,我们采用Ctrl+Shift+`的快捷键。

如果你想关闭这个功能,你可以在settings.json中设置:

"python.terminal.activateEnvironment": false,
,

好的,感谢杰森/史蒂文,我终于掌握了你应该简单但不是。这是我认为在 Visual Studio 代码中创建和激活 Python 虚拟环境的最简单方法。假设我从激活的 Tutorial 环境开始,并且想要创建一个名为 ForeignHoliday(我们只能做梦)。首先在 VS Code 终端中创建新环境:

enter image description here

这将创建环境:

enter image description here

但是,它不会激活它,也不会更改默认的 Python 解释器以将其用于新的虚拟环境。您可以通过选择解释器一次性完成这两件事 - 单击 VS Code 屏幕左下角的此处:

enter image description here

您现在可以选择一个解释器 - 您的新虚拟环境(令人恼火)尚未列出,因此您必须找到它:

enter image description here

选择寻找您的口译员:

enter image description here

双击新虚拟环境中 Scripts 文件夹中的 Python 解释器(pythonw 替代方法不会调用终端窗口,因此大多数人应该避免这种情况 - 参见 this SO article):

enter image description here

现在按 SHIFT + CTRL + ' 以启动一个新的终端窗口(不仅仅是 CTRL + ',因为这会将您切换到现有的终端窗口)。你应该看到这个:

enter image description here

您现在可以安装和导入包,它们都会在正确的位置!我希望我几天前读过这个答案......

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。