在多根工作空间中使用最新的VSCode Python扩展(ms-python.python
)时,有人知道如何指定正确的Python版本吗?
我的全局python环境是2.7,我的VSCode项目的目录结构如下:
root
├ .vscode
│
├ childA(Python2.7)
│ ├ .venv(virtualenv directory created by Pipenv)
│ └ .vscode
│
└ childB(Python3.7)
│ ├ .venv(virtualenv directory created by Pipenv)
└ .vscode
我将pythonPath都设置为子目录的.vscode/settings.json
文件,如下所示:
"python.pythonPath": ".venv/bin/python"
最近我更新了VSCode Python扩展,之后,在ChildB目录下,Python扩展始终显示如下错误消息:
[Python] invalid syntax, parameter annotations require 3.x [E16]
我使用如下类型注释:
def add(p1: int, p2: int)
return p1 + p2
此错误消息由我在此处找到的Python语言服务器返回: https://github.com/Microsoft/python-language-server/blob/7be329643299111cc1f0839d20aa9eb146b0d381/src/Analysis/Engine/Impl/Parsing/Parser.cs#L2088
当我不使用多根工作区时,不会显示此错误。
我认为当使用多根工作空间时,最新的Python扩展无法识别在.vscode/settings.json
中设置的正确Python版本。
我希望Python Language Server在childB目录中识别正确的Python版本。
有什么建议吗?