VS Code中的anaconda环境出现“无法导入”错误

时间:2018-12-08 10:31:44

标签: python visual-studio-code anaconda conda pylint

我正在尝试使用FEniCS使用Python解决偏微分方程。我将其与anacondaconda-forge一起安装,并使用它来激活fenicsproject环境

source activate fenicsproject

我在jupyter中运行脚本(可以运行),但是使用VS Code编写更详细的代码通常更方便。当我在(内置)终端中运行以VS Code编写的脚本时,只要启用了fenicsproject环境,它们就可以正确运行。

但是在编辑器中,我会遇到很多这样的错误

[pylint] Unable to import '...' [E0401]'
[pylint] Undefined variable '...' [E0602]

我该如何消除编辑器中的那些错误,从而使真正的错误脱颖而出。 甚至更好的是,使自动完成和建议适用于fenicsmshr等软件包。

1 个答案:

答案 0 :(得分:3)

根据the Python in Visual Studio Code docs,这可能是由于Visual Studio代码指向了错误的Python版本。

  

1。无法导入(圆筒)

     
      
  • 场景:您已经安装了一个模块,但是IDE中的linter一直在抱怨。无法导入模块,因此出错   诸如以下的消息显示为棉短错误:

    .. unable to import 'xxx' ..
    
  •   
  • 原因:Python扩展很可能使用了错误版本的Pylint。
  •   
     解决方案1 ​​:(将工作区设置配置为指向完全合格的python可执行文件):      
      
  1. 打开工作区设置(settings.json)
  2.   
  3. 标识python可执行文件的完全限定路径(甚至可以是虚拟环境)
  4.   
  5. 确保为上述python环境安装了Pylint
  6.   
  7. 将设置“ pythonPath”配置为指向(先前标识的)标准python可执行文件。

    "python.pythonPath": "/users/xxx/bin/python" ```
    
  8.   
     解决方案2 :(从激活的虚拟环境中打开VS Code):      
      
  1. 打开终端窗口
  2.   
  3. 激活相关的python虚拟环境
  4.   
  5. 确保在此虚拟环境中安装了Pylint

    pip install pylint
    
  6.   
  7. 关闭VS代码的所有实例
  8.   
  9. 在此终端窗口中启动VS Code
      (这将确保VS Code进程将继承所有Virtual Env环境设置)
  10.