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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • splice方法的使用_assign方法

    splice方法的使用_assign方法splice方法常用于数组内指定元素删除,例:vardata=[1,2,3,4,5]data.splice(1,1)console.log(data)打印出来的值为[1,3,4,5]也可用于删除多个,例如:data.splice(1,2)打印值为[1,4,5]注释:splice(第一个值为从何处开始,第二个值为删除几个)第一个值为index下标,从0开始,删除数组内的第几个元素第二个值为删除几个元素,从第一个值定义的下标位置开始扩展:splice方法也可用于数据的增加,修改,例

    2022年9月24日
    2
  • LeetCode算法题-Lowest Common Ancestor of a Binary Search Tree

    LeetCode算法题-Lowest Common Ancestor of a Binary Search Tree

    2021年6月17日
    95
  • Linux 设置固定IP地址

    Linux 设置固定IP地址当我们安装完linux之后需要做的第一件事就是配置网络,因为有了网络我们可以做更多的事,比如下载插件,使用xshell工具连接等等ifconfig查看网络配置,类似windows的ipconfiglinux的网络配置文件一般在/etc/sysconfig/network-scripts/下面,使用命令cd切换到该路径下其中ifcfg-eth0就是虚拟机桥接的网络配置,如果有无…

    2022年5月2日
    68
  • ora-01006:绑定变量不存在_输出参数不是绑定变量

    ora-01006:绑定变量不存在_输出参数不是绑定变量  #命令行新建job错误:ORA-01008并非所有变量都已绑定。 1、改正前代码:DECLAREjobNUMBER;begin      sys.dbms_job.submit(job=>:job, what=>’P_AUTO_FETCH_RECORDS;’, next_date=>to_…

    2025年9月25日
    6
  • Oracle 11g数据库详细安装步骤图解,附带安装包

    Oracle 11g数据库详细安装步骤图解,附带安装包1.先到Oracle官网上下载11goracleDatabase11g第2版(11.2.0.1.0)标准版、标准版1以及企业版,适用于MicrosoftWindows(x64)的OracleDatabase11g第2版(11.2.0.1.0),下载地址(需要注册登录):http://download.oracle.com/otn/nt/ora…

    2022年5月7日
    56
  • Swift-Moya 源码解析

    Swift-Moya 源码解析1 Moya 的定义 Moya 是一个高度抽象的网络库 他的理念是让你不用关心网络请求的底层的实现细节 只用定义你关心的业务 且 Moya 采用桥接和组合来进行封装 默认桥接了 Alamofire 使得 Moya 非常好扩展 让你不用修改 Moya 源码就可以轻易定制 官方给出几个 Moya 主要优点 编译时检查 APIendpoint 权限让你使用枚举定义各种不同 Target endpoints 把 stubs 当做一等公民对待 因此测试超级简单 2 Moya 的使用 Moya 的使用分成几步 首先需要先自定义一个

    2025年10月9日
    4

发表回复

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

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