VS代码未加载Python解释器

时间:2020-09-23 11:29:12

标签: python linux visual-studio-code anaconda

这是我的VS代码信息:

Version: 1.43.2 (user setup)
Commit: 0ba0ca52957102ca3527cf479571617f0de6ed50
Date: 2020-03-24T07:38:38.248Z
Electron: 7.1.11
Chrome: 78.0.3904.130
Node.js: 12.8.1
V8: 7.8.279.23-electron.0
OS: Windows_NT x64 10.0.17763

我的python路径在这里:

/auto/energymdl2/anaconda3/envs/commod_py3_20200921/bin/python

但是,即使我选择了VS代码,状态栏中也会一直说 Select Python Interpreter enter image description here

但是当我尝试选择时,它说它已经被选择了。目前,由于这个原因,我无法使用Python linter Flake8。 enter image description here

当我检查控制台日志时。我得到了以下内容。

Error Python Extension: 2020-09-23 05:02:01: Failed to parse interpreter information for /auto/energymdl2/anaconda3/envs/commod_py3_20200921/bin/python,/home/test/.vscode-server/extensions/ms-python.python-2020.5.86806/pythonFiles/pyvsc-run-isolated.py,/home/test/.vscode-server/extensions/ms-python.python-2020.5.86806/pythonFiles/interpreterInfo.py stderr: Error in sitecustomize; set PYTHONVERBOSE for traceback:ModuleNotFoundError: No module named 'sdlc'

但是当我进入Python并导入 sdlc 时。我能够。 Python / iPython路径:

/auto/energymdl2/anaconda3/envs/commod_py3_20200921/bin/python

enter image description here 这是我的setting.json

中的内容
{
  "python.linting.pycodestyleEnabled": false,
  "python.linting.flake8Enabled": true,
  "python.linting.enabled": true,
  "python.linting.flake8Args": [
    "--ignore=W605",
    "--ignore=W503",
    "--ignore=W605",
    "--max-line-length=120"
  ],
  "python.linting.banditEnabled": false,
  "python.pythonPath": "/auto/energymdl2/anaconda3/envs/commod_py3_20200921/bin/python",
  // "python.condaPath": "/auto/energymdl2/anaconda3/envs/commod_py3_20200727/bin/python"
}

1 个答案:

答案 0 :(得分:0)

事实证明,$your_conda_env_path/lib/python3.6/site-packages/sitecustomize.py 中有一些逻辑可以在工作存储库中导入用户定义的包。但是工作目录环境变量设置不正确。我在 repo 根目录下创建了一个 .env 文件并添加了相关的 env 变量。它解决了这个问题。

所以实际上所有的 conda 环境都被检测到了。只是当它尝试加载它们时,它会遇到 ModuleNotFoundError。