VSCode Pylint 消除OpenCV PyTorch等程序中下面的红色波浪线

本文转载自博客,非常感谢博主解决了相应的问题。

前言

VSCode版本

我是在Windows10下使用的最新版的VSCode:June 2020 (version 1.47)
在这里插入图片描述

问题

安装Anaconda后再安装VSCode,默认给我们安装了Pylint。而Pylint是什么呢,这里引用博客
pylint主要用来分析你的PY代码,查找出其中的错误,并给出提示,并且还可以为你提出一些编码风格的提示的一个PYTHON模块。总之,它的作用是使得你的代码更加的接近 PEP 008 (http://www.python.org/dev/peps/pep-0008/) Title: Style Guide for Python Code 中所描述的代码风格,使你的代码统一并更加可读。

使用起来很方便,但唯一不友好的是,它不能识别它包含之外的包,例如常见的opencv和pytorch,这对我来说很头疼,因为每当出现一次cv2和torch,他们下面就有一条红色的波浪线,导致VSCode右边的框里全是红色,强迫症表示很难受,最大的问题还是它埋藏了真正的语法错误,导致很难发现他们!效果就是这样的:
在这里插入图片描述
只要有torch和cv2出现的地方就有红色的波浪线,很是头疼

常见不正确的处理方式

1

打开百度搜索:vscode pylint OpenCV 红色波浪线,出现的第一条博客就是:解决VSCode 中调用cv2,代码一直显示红色波浪线的问题, 他里面说在VSCode的设置里面搜索pylintargs,然后添加一句:

"python.linting.pylintArgs": ["--generate-members"]

   
    
    
  • 1

但是新版的VSCode里面已经看不到json文件了,我按照评论里面的说法添加:

--generate-members

   
    
    
  • 1

如下:
在这里插入图片描述
我看到很多博客里面都是这么说的,例如:
https://blog.csdn.net/ngy321/article/details/88972255
https://blog.csdn.net/zaf0516/article/details/95635658

立马尝试了一下,发现红色波浪线的确是没有,但是所有的提示都没有了,像是把pylint卸载了一样,就像这样:
在这里插入图片描述
但这不是我的目的呀,我是想发现真正的错误!

2

看到一个批判上面做法的博客:Vscode Pylint no-member, 他里面说上面填的东西都是错误,应该是:

--generated-members

   
    
    
  • 1

而不应该是–generate-members。

兴高采烈的改过来后发现还是无果……

我也安装他里面推荐的方法:安装pylint-django

pip install pylint-django

   
    
    
  • 1

然后在填写–generated-members的位置写上:

--load-plugins=pylint_django

   
    
    
  • 1

结果是没有了红色波浪线,但出现了很多不知道原因的蓝色波浪线:
在这里插入图片描述
还是没有解决问题

解决办法

直到看到GitHub上的一个做法:
在这里插入图片描述
即,添加:

--errors-only
--generated-members=numpy.* ,torch.* ,cv2.* , cv.*

   
    
    
  • 1
  • 2

在这里插入图片描述
现在的效果:
在这里插入图片描述
这就很好的解决了我的问题,关于的cv2和torch的红色波浪线没有了,只暴露我真实的错误,太好了
借用一个人的评论:You saved part of my life!
在这里插入图片描述
感谢

前言

VSCode版本

我是在Windows10下使用的最新版的VSCode:June 2020 (version 1.47)
在这里插入图片描述

问题

安装Anaconda后再安装VSCode,默认给我们安装了Pylint。而Pylint是什么呢,这里引用博客
pylint主要用来分析你的PY代码,查找出其中的错误,并给出提示,并且还可以为你提出一些编码风格的提示的一个PYTHON模块。总之,它的作用是使得你的代码更加的接近 PEP 008 (http://www.python.org/dev/peps/pep-0008/) Title: Style Guide for Python Code 中所描述的代码风格,使你的代码统一并更加可读。

使用起来很方便,但唯一不友好的是,它不能识别它包含之外的包,例如常见的opencv和pytorch,这对我来说很头疼,因为每当出现一次cv2和torch,他们下面就有一条红色的波浪线,导致VSCode右边的框里全是红色,强迫症表示很难受,最大的问题还是它埋藏了真正的语法错误,导致很难发现他们!效果就是这样的:
在这里插入图片描述
只要有torch和cv2出现的地方就有红色的波浪线,很是头疼

常见不正确的处理方式

1

打开百度搜索:vscode pylint OpenCV 红色波浪线,出现的第一条博客就是:解决VSCode 中调用cv2,代码一直显示红色波浪线的问题, 他里面说在VSCode的设置里面搜索pylintargs,然后添加一句:

"python.linting.pylintArgs": ["--generate-members"]

   
  
  
  • 1

但是新版的VSCode里面已经看不到json文件了,我按照评论里面的说法添加:

--generate-members

   
  
  
  • 1

如下:
在这里插入图片描述
我看到很多博客里面都是这么说的,例如:
https://blog.csdn.net/ngy321/article/details/88972255
https://blog.csdn.net/zaf0516/article/details/95635658

立马尝试了一下,发现红色波浪线的确是没有,但是所有的提示都没有了,像是把pylint卸载了一样,就像这样:
在这里插入图片描述
但这不是我的目的呀,我是想发现真正的错误!

2

看到一个批判上面做法的博客:Vscode Pylint no-member, 他里面说上面填的东西都是错误,应该是:

--generated-members

   
  
  
  • 1

而不应该是–generate-members。

兴高采烈的改过来后发现还是无果……

我也安装他里面推荐的方法:安装pylint-django

pip install pylint-django

   
  
  
  • 1

然后在填写–generated-members的位置写上:

--load-plugins=pylint_django

   
  
  
  • 1

结果是没有了红色波浪线,但出现了很多不知道原因的蓝色波浪线:
在这里插入图片描述
还是没有解决问题

解决办法

直到看到GitHub上的一个做法:
在这里插入图片描述
即,添加:

--errors-only
--generated-members=numpy.* ,torch.* ,cv2.* , cv.*

   
  
  
  • 1
  • 2

在这里插入图片描述
现在的效果:
在这里插入图片描述
这就很好的解决了我的问题,关于的cv2和torch的红色波浪线没有了,只暴露我真实的错误,太好了
借用一个人的评论:You saved part of my life!
在这里插入图片描述
感谢

猜你喜欢

转载自blog.csdn.net/weixin_39536859/article/details/108653676