python flake8 代码扫描

python flake8 代码扫描一、介绍Flake8是由Python官方发布的一款辅助检测Python代码是否规范的工具,flake8是下面三个工具的封装:PyFlakesPep8NedBatchelder’sMcCabescriptFlake8通过启动单独的flake8脚本运行所有工具,它在一个Per文件中显示告警,合并到输出中。也增加一些特征:包含这行文件将被忽略:#fl…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

一、介绍

Flake8 是由Python官方发布的一款辅助检测Python代码是否规范的工具,flake8是下面三个工具的封装:

  1. PyFlakes
  2. Pep8
  3. NedBatchelder’s McCabe script

Flake8通过启动单独的flake8脚本运行所有工具,它在一个Per文件中显示告警,合并到输出中。

也增加一些特征:

  1. 包含这行文件将被忽略:#flake8: noqa
  2. 结尾包含#noqa注释的行将不发布告警
  3. GIT和Mercurial钩子
  4. McCabe复杂度检查器
  5. 可以通过flake8.extension入口点扩展

安装:pip install flake8

 

二、使用

1、检查指定目录下的文件(包括这个目录的所有子文件)

例如:我们有一个目录Zbj_project,如果我想检查这个目录下的所有文件是否规范:(在命令行中使用[即windows的cmd下])

flake8  Zbj_project

 

2、如果你只想检查这些文件的特定的错误类型(e.g., E123)

flake8 --select E123 Zbj_project

 

3、如果需要选择以特定类型开头的错误码,eg:以E开头

flake8 --select E Zbj_project
如果需要选择多个特定错误码用逗号隔开就可以了

 

4、忽略特定错误码

静态代码检查忽略H233类型错误

flake8 --ignore H233 Zbj_prioject

 

5、忽略特定文件/文件夹

静态代码检查忽略test2.py文件

flake8 --exclude Zbj_project/path/test.py Zbj_project

 

6、关于Flake8更多命令参考

flake8 –-help

 

7、Flake8的小插件

Flake8相比其他Python静态代码检查工具的优势在于其良好的扩展性,以下是介绍Flake8几款比较流行的插件:

1.hacking

插件安装

pip install hacking

hackinghacking插件安装完成之后,会新增一类错误返回码以H开头:H***:hacking返回的错误类型。

在hacking中有些错误类型检测是默认关闭的,可以通过命令行或者配置文件修改开关:enable-extensions= H106,H203

 

2.pep8-naming

针对目前pep8尚未支持命名规范的检查,有人开发出了此款插件作为规则补充。

pep8-naming插件安装完成之后,会新增一类错误返回码以N开头:N***: pep8-naming返回的错误类型。

安装

pip install pep8-naming

 

python flake8 代码扫描
python flake8 代码扫描

8、在Jenkins上分析flake8的报告

在Flake8上安装插件,flake8-junit-report将flake8的报告转换为junit format

1.安装flake8-junit-report

pip install flake8-junit-report

 

2.输出Flake8测试报告

flake8 --output-file flake8.txt shadowtest

 

3.转换成junit测试结果的xml

python -m junit_conversor flake8.txt flake8_junit.xml

 

 

 

 

 

 

转载于:https://www.cnblogs.com/Zzbj/p/11204411.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/194461.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 利用SecureCRTPortable远程连接虚拟机

    利用SecureCRTPortable远程连接虚拟机利用SecureCRTPortable远程连接虚拟机1.出现的问题​ 打开SecureCRTP之后,输入正确的ip地址却无法连接到虚拟机。​ 2.解决调试​ 1.通过windows的cmd去ping虚拟机,同样还是ping不通2.查看网络适配器中VMnet8(该网卡是作为虚拟机与本机交互的一个网卡)3.错误原因:网卡中的ip地址与虚拟机中的地址相同,网关与虚拟机不相同​ 更改网卡中的ip地址使得…

    2022年6月14日
    36
  • Python websocket_php需要编译吗

    Python websocket_php需要编译吗这里很坑爹………地址换了….网上到处都是旧的github地址….更郁闷的是旧地址的代码在centos等各个linux都能编译通过,但是到了mac就郁闷了,各种报错…..坑爹来的然后很多人说hs没在维护了,那是因为他们看到的是旧的git代码地址….囧…..搞死我了,我还真以为他不更新了,看到git项目,3年没更新了,心都凉了……各种找错误各种…

    2022年8月24日
    4
  • 卡方分布、方差分析

    卡方分布:首先我们先把现代数学中的数理统计中的卡方分布已经烂大街的定义先放下来,我先回到卡方检验的诞生的之地。在1900年,皮尔森发表了著名的关于卡方检验的文章,该文章被认为是现代统计学的基石之一。在该文章中,皮尔森研究了拟合优度检验:……(这里之所以加点的原因是因为,下面的话很不好理解,我们举一个实际一点的例子就容易理解了。)下面图片有个赌场的色子(注意阅读下面红色字体)…

    2022年4月8日
    115
  • platform_driver_register 与 platform_device_register「建议收藏」

    platform_driver_register 与 platform_device_register「建议收藏」
    platfrom_driver_register()是在设备注册时进行绑定的.以USB为例:先插上USB设备并挂到总线上,然后在安装USB设备驱动的过程中,从总线上遍历各个设备,看是否有与驱动相匹配的设备,如果有,则两者绑定,就是platfrom_driver_register()
     
    platfrom_device_register()是在驱动注册时进行绑定的.以USB为例:先安装USB驱动程序,然后当USB设备插入时,就遍历总线上各个驱动,看两者是否匹配,如果相配则

    2022年7月14日
    18
  • 如何检测网站有没有被挂黑链_检测平台

    如何检测网站有没有被挂黑链_检测平台 网页挂马及暗链检测 什么是网页挂马 网页挂马是指恶意攻击者攻击WEB网站后,在网页中嵌入一段代码或脚本,用于自动下载带有特定目的木马程序,而恶意攻击者实施恶意代码或脚本植入的行为通常称为“挂马”。  什么是SEO暗链 SEO暗链是SEO黑帽手法中相当普遍的一种手段。笼统地说,它就是…

    2022年9月26日
    0
  • 实现线程同步的几种方式总结

    实现线程同步的几种方式总结在多线程中线程的执行顺序是依靠哪个线程先获得到CUP的执行权谁就先执行,虽然说可以通过线程的优先权进行设置,但是他只是获取CUP执行权的概率高点,但是也不一定必须先执行。在这种情况下如何保证线程按照一定的顺序进行执行,今天就来一个大总结,分别介绍一下几种方式。通过Object的wait和notify 通过Condition的awiat和signal 通过一个阻塞队列 通过两个阻塞队列 …

    2022年7月15日
    13

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号