如何设置pylint分数阈值?

时间:2018-06-20 09:16:35

标签: python pylint threshold

我想提取我的pylint等级并设置一个阈值。例如,让我解释一下,如果分数低于5,我要退出1;否则,请退出。如果我的代码的等级高于5,我想退出0并继续执行Jenkins过程。

3 个答案:

答案 0 :(得分:5)

这是在Python中访问pylint API的一种方法。以下代码应保存到文件中,并使用脚本的第一个参数执行,以将模块/文件添加为lint:

import sys
from pylint import lint

THRESHOLD = 5

if len(sys.argv) < 2:
    raise ArgumentError("Module to evaluate needs to be the first argument")

run = lint.Run([sys.argv[1]], do_exit=False)
score = run.linter.stats['global_note']

if score < THRESHOLD:
    sys.exit(1)

答案 1 :(得分:4)

自pylint 2.5.0起,有一个名为--fail-under的新参数可以解决此问题,而无需外部工具或脚本。

在此示例中,当得分低于8时,pylint将错误退出:

pylint --fail-under=8 python_code.py

答案 2 :(得分:1)

安装

> pip install pylint-fail-under

您可以检查以下阈值

pylint-fail-under --fail_under 6.0 test_pylint_code.py

如果分数低于6.0,则会返回一条消息

错误:分数5.3999999999999995小于失败失败值6.0

否则,它返回退出代码0。

到官方文档的链接为https://pypi.org/project/pylint-fail-under/