使用VS Code Python扩展-如何将python模块安装到虚拟环境之外的永久位置?

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

我正在使用Python 3.7,并使用VS Code作为我的IDE。我已经安装了Microsoft Python扩展,并启用了pylint进行linting和pytest进行单元测试,并将它们安装到系统python37脚本文件夹中,而没有任何虚拟环境存在或处于活动状态。

此时,似乎一切正常。我的Python37/Scripts路径在Windows系统PATH上,并且在那里存在pytest和pylint主脚本/ exe。 VS Code可以找到并运行我的测试,并且皮棉很好。

[现在,我为正在处理的软件包安装一个虚拟环境,并将Python解释器更改为名为.venv的虚拟环境。

完成此操作后,我安装了我所有的软件包依赖项,并且似乎一切正常,但是VS Code弹出窗口,告诉我未安装pylint和pytest。

如果我单击yes进行安装,则似乎使用当前的默认python可执行文件(在本例中为.venv虚拟环境中的python 3.7)进行安装,但是使用--user选项将其安装到用户Python\Python37\Scripts文件夹(在\users\user\appdata\roaming文件夹中),即使该文件已经存在于我的系统python37\Scripts文件夹中,也位于路径上(安装时未激活虚拟环境)。

但是即使在扩展程序按照所需的方式安装它们之后,我仍然无法自动发现我的测试,并且当我尝试配置测试时,它会尝试再次安装到用户目录。

-

所以,我想问的所有这一切-这是VS Code中的缺陷吗?

是否有任何方法可以在永久位置上安装我想使用的标准Python工具,而VS Code总是可以找到该位置,或者我必须将每个工具(例如pylint和pytest)重新安装到我设置的每个虚拟环境中?

如果我将这些软件包手动安装到虚拟环境,则看起来一切正常。是将它们(以及我计划在全球范围内使用的所有其他工具)安装到每个虚拟环境中的唯一选择吗?

python visual-studio-code pytest pylint
1个回答
0
投票

我确实找到了pylint的解决方案,(尽管有点麻烦)。

在全局VS Code设置中,对于[[PyLint,搜索pylintpath的VS Code设置,然后找到下面列出的项目,并用pylint的用户或系统安装路径进行填写。在Windows中,它必须采用以下格式,每个路径分隔符都带有双反斜杠:

enter image description here

注意,您还可以通过在“设置”中选择相应的选项卡,为给定的工作区或文件夹输入pylint的绝对路径。

pytest有类似的设置,其工作方式似乎相同。我在使用pytest发现并运行时发现了一些“毛病”(它似乎每次测试都要运行两次),但是它确实可以工作。

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