如何在VS Code中设置每个项目的PYTHONPATH



我从源代码安装了不同的python版本,并为它们创建了虚拟环境,并在每个项目的设置中设置它们。。操作系统(SuSe Leap(将与python 3.6一起推出。

如何在VS Code中为每个项目设置PYTHONPATH,我不想修改一般路径。

在设置中设置虚拟环境的情况下,可以使用python内置程序,但不会在正确的路径中查找第三方程序包。

我已经将pythonPath设置为python环境中的解释器,但在导入包时仍然存在一些问题,并且我找不到PYTHONPATH的变量?

您有三种方法来配置PYTHONPATH:

1.settings.json文件中的terminal.integrated.env.*。例如:

"terminal.integrated.env.windows": {
"PYTHONPATH": "${workspaceFolder}"
}

但它只影响通过终端路由的操作,例如调试。

使用终端设置时,PYTHONPATH会影响任何由用户在终端内运行,以及为通过终端路由的用户执行扩展作为调试。但是,在这种情况下,当执行扩展时未通过终端路由的操作,例如使用linter或格式化程序,则此设置不会对模块查找。

2.在.env文件中配置PYTHONPATH

默认情况下,Python扩展查找并加载名为.env的文件在当前工作区文件夹中。文件由默认值标识条目";python.envFile":"{workspaceFolder}/.env";在您的用户中设置。

但它不会影响在终端中运行的操作。

当使用.env文件设置PYTHONPATH时,它将影响扩展程序代表您执行的操作以及调试器执行的操作,但是它不会影响在终端中运行的工具。

3.在launch.json文件中配置"env"条目,例如:

{
"name": "Python: Current File",
"type": "python",
"request": "launch",
"program": "${file}",
"console": "integratedTerminal",
"envFile": "${workspaceFolder}/.env",
"env": {
"PYTHONPATH": "${workspaceFolder}"
}
}

显然,它只会影响调试操作。

您应该能够编辑每个项目的设置.json

https://code.visualstudio.com/docs/python/environments

附加信息

https://code.visualstudio.com/docs/python/settings-reference

您也可以在.vnv/bin/activate 中设置PYTHONPATH

export PYTHONPATH="${PYTHONPATH}:/your_home/your_user/project_root"

要为非调试目的添加额外的提示路径,例如在非标准位置搜索导入,可以使用在settings.json中设置它

{
...
"python.analysis.extraPaths": [
"./build"
]
...
}

现在重新加载您的VS代码窗口,导入和自动完成将正常工作!

最新更新