当前位置: 首页 > article >正文

【Python】如何设置VSCode中的Pylint,消除各种没有必要的警告

前言

  最近打开VSCode,编辑之前创建的Python项目,突然发现多了一堆报错和警告,如下图所示。

在这里插入图片描述

就非常吓人,因为之前这个项目是没有任何报错的,我赶紧试着运行了一下,还好,可以正常运行,那就说明是检测出了问题,不是代码的问题。一番查找,问题定位到了Pylint上面。 原版的Pylint是Python插件自带的一个功能,这一版更新之后将Pylint给独立出来了,在左侧插件列表中可以看到多了一个Pylint插件,猜测新加入插件的默认设置是展示所有info,warning,error等,所以才会有上面那个“壮观”的代码信息提示。

在这里插入图片描述

如何设置Pylint

  既然问题定位到了,那必然是这个插件的设置不对,因此先打开插件的设置【在插件列表中点击插件右下角的小齿轮】

在这里插入图片描述

设置项很多,但其实为了解决当前这个问题,只需要设置第一项——参数 即可。

在这里插入图片描述

加入的参数为

--errors-only

添加完之后,打开settings.json文件【Ctrl+, 打开设置,然后点击右上角那个不规则按钮,即可打开】在这里插入图片描述

然后就会看到在最下面新增了一个设置:

在这里插入图片描述
和设置的内容是完全对应的。


增加可移植性

  考虑到有可能这个项目需要给其他人运行,对方的VSCode可能没有设置这些,那么也可以考虑在项目文件底下添加配置文件的方式来间接设置,这样对方直接打开项目看到的就是没有任何报错的代码了。

  解决方法就是在项目根目录下新建一个.pylintrc文件,然后在里面加入

pylint.args:{
    erros-only: true
}

其实和settings.json文件中的内容差不多


其他问题

  因为项目中使用了PyQt5这个库,但是导入那块一直在报错,试了各种办法,红色波浪线老是消不掉,在朋友的提示下,找到pylint的另一项设置,立刻解决了:

在这里插入图片描述

--unsafe-load-any-extension

同样,如果要增加可移植性,可以在.pylintrc文件中添加以下内容:

pylint.args:{
    erros-only: true,
    unsafe-load-any-extension: true
}

或者是

pylint.args:{
    erros-only: true,
    extension-pkg-whitelist: [
    	PyQt5
    ]
}

思路来源


扩展
  除了上述这些参数外,pylint还有更多参数可以设置,具体可以参考官方的文档,之后遇到啥问题考虑来这找一下解决方法。

在这里插入图片描述


http://www.kler.cn/a/398331.html

相关文章:

  • 【java】链表:判断链表是否成环
  • 魔方和群论
  • 爬虫开发工具与环境搭建——开发工具介绍
  • Swift的可选绑定(Optional binding)
  • 【机器学习导引】ch6-支持向量机
  • 基于rk356x u-boot版本功能分析及编译相关(三)Makefile分析
  • 【异常解决】Linux shell报错:-bash: [: ==: 期待一元表达式 解决方法
  • MySQL慢日志
  • 解决IDEA报包不存在,但实际存在的问题
  • 适用于 Chrome 浏览器的广告拦截类插件
  • vue2+ element ui 集成pdfjs-dist
  • VSCode+ESP-IDF开发ESP32-S3-DevKitC-1(1)开发环境搭建
  • 数据结构习题——有效的括号(栈),栈与队列和互相实现,循环队列的实现
  • MongoDb语法之(大于、小于、大于或等于、小于或等于、不等于)
  • Android fragment ,在Activity崩溃的时候,fragment碎片就会重叠,这样处理,完美
  • GaussDB部署架构
  • #UniApp篇:uni面试题
  • BERT的中文问答系统34
  • 解决背景图因为图片路径中携带括号导致图片无法显示的问题
  • 内容占位符:Kinetic Loader HTML+CSS 使用CSS制作三角形原理
  • SQL面试题——抖音SQL面试题 最大在线用户数
  • Android OpenGLES2.0开发(八):Camera预览
  • 鸿蒙中如何实现图片拉伸效果
  • 计算机网络 (4)计算机网络体系结构
  • 分享一个小米手环自定义表盘安装教程与下载(支持最新小米手环9pro)
  • day01(单片机高级)单片机控制ESP8266连接TCP