Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在使用多根工作区时为python语言服务器指定正确的python版本_Python_Visual Studio Code_Python Language Server - Fatal编程技术网

如何在使用多根工作区时为python语言服务器指定正确的python版本

如何在使用多根工作区时为python语言服务器指定正确的python版本,python,visual-studio-code,python-language-server,Python,Visual Studio Code,Python Language Server,当使用最新的VSCode Python扩展(ms Python.Python)和多根工作区时,有人知道如何指定正确的Python版本吗 我的全局python环境是2.7,我的VSCode项目的目录结构如下: 根 ├ .vscode │ ├ childA(蟒蛇2.7) │ ├ .venv(由Pipenv创建的虚拟目录) │ └ .vscode │ └ childB(蟒蛇3.7) │ ├ .venv(由Pipenv创建的虚拟目录) └ .vscode 我将pythonPath的两个子目录的

当使用最新的VSCode Python扩展(
ms Python.Python
)和多根工作区时,有人知道如何指定正确的Python版本吗

我的全局python环境是2.7,我的VSCode项目的目录结构如下:


根
├ .vscode
│
├ childA(蟒蛇2.7)
│  ├ .venv(由Pipenv创建的虚拟目录)
│  └ .vscode
│
└ childB(蟒蛇3.7)
│  ├ .venv(由Pipenv创建的虚拟目录)
└ .vscode

我将pythonPath的两个子目录的
.vscode/settings.json
文件设置如下:

“python.pythonPath”:“.venv/bin/python”

最近我更新了VSCode Python扩展,之后,在ChildB目录下,Python扩展总是显示如下错误消息:

[Python]无效语法,参数注释需要3.x[E16]

我使用类型注释,如下所示:

def添加(p1:int,p2:int)
返回p1+p2

此错误消息由我在此处找到的Python语言服务器返回:

当我不使用多根工作区时,不会显示此错误

我认为最新的Python扩展无法识别我在使用多根工作区时在
.vscode/settings.json
中设置的正确Python版本

我希望Python语言服务器能够识别childB目录中正确的Python版本


有什么建议吗?

多根工作区的设置没有在
vscode/Settings.json
文件中指定,而是在您的。

是中指定。这是
pls.childB_dir=“.vscode/settings.json”;pls.childB\u dir.string\u parse\u multi\u root()
。希望这能有所帮助。@YangK谢谢你的回复。但是我很困惑。这是VSCode设置吗?我可以“查找”pls或
string\u parse\u multi\u root
设置。或者,如果这是一个Python代码,我应该把代码放在哪里?谢谢你的回复。但不幸的是,VSCode intellicode插件和语言服务器此时似乎无法识别多根工作区。正确,在这种情况下使用绝地武士直到增加支援:。我明白了。谢谢。