我从源代码安装了不同的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代码窗口,导入和自动完成将正常工作!