Кто-нибудь знает, как указать правильную версию Python при использовании новейшего расширения VSCode Python (ms-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 Language Server, который я нашел здесь:https://github.com/Microsoft/python-language-server/blob/7be329643299111cc1f0839d20aa9eb146b0d381/src/Analysis/Engine/Impl/Parsing/Parser.cs#L2088
Когда я не использую многокорневое рабочее пространство, эта ошибка не отображается.
Я думаю, что новейшее расширение Python не может распознать правильную версию Python, которую я установил в .vscode/settings.json
когда я использую рабочее пространство с несколькими правами root.
Я хочу, чтобы Python Language Server распознавал правильную версию Python в каталоге childB.
Есть предложения?