Repolode
pylint-dev

pylint-dev/pylint

一款 Python 静态代码分析工具,无需运行代码即可检查错误、执行编码规范并发现代码异味。

Star
5,745
Fork
1,424
未关闭 Issue
1,049
最近提交
4天前

这是什么?

Pylint 在不执行代码的前提下静态分析 Python 源码,检查错误、执行编码规范、发现代码异味,并给出重构建议。它可以在命令行中运行,也能集成到大多数编辑器和 IDE 中。

与其他 linter 相比,Pylint 的核心特点是类型推断。它基于内部的代码表示(astroid)推断变量和节点的实际取值,因此即使代码没有类型注解,也能发现问题。例如,它能识别出通过别名调用的 logging 模块函数实际是日志调用。代价是速度较慢,但检查更全面,还包含一些默认关闭、可通过配置启用的主观检查项。

Pylint 支持通过配置调整规则,也可以编写插件实现内部自定义检查,并有针对 Django、Pydantic 等框架和第三方库的插件。项目还附带 pyreverse(生成包和类图)与 symilar(重复代码检测)两个工具。

核心功能

  • 01无需运行代码即可检测 Python 代码中的错误和缺陷。
  • 02基于代码推断实际取值,对缺少类型注解的代码同样有效。
  • 03支持可配置的编码规范检查并标记代码异味。
  • 04支持自定义插件和针对框架的插件。
  • 05附带 pyreverse 生成类图和包图,以及 symilar 检测重复代码。

适用场景

  • 在 Python 项目的 CI 流程中执行代码质量和风格检查。
  • 对遗留代码库逐步检查,先只看错误,再逐步开启更多规则。
  • 通过自定义插件添加项目专属的检查规则。
  • 在编辑器或 IDE 中获取实时的代码检查反馈。

快速上手

  1. 1

    使用 pip 安装 pylint

    pip install pylint
  2. 2

    对你的 Python 代码运行 pylint

使用前须知

  • 采用 GPLv2 许可证,这是一种 Copyleft 许可证,可能限制部分闭源用途。
  • 基于推断的分析使 Pylint 明显比其他 linter 慢。

收录于专题

标签

常见问题

pylint 是什么?
一款 Python 静态代码分析工具,无需运行代码即可检查错误、执行编码规范并发现代码异味。 Pylint 在不执行代码的前提下静态分析 Python 源码,检查错误、执行编码规范、发现代码异味,并给出重构建议。它可以在命令行中运行,也能集成到大多数编辑器和 IDE 中。
pylint 可以免费使用吗?用的什么许可证?
pylint 以 GPL-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
pylint 还在维护吗?
活跃维护中。pylint 最近一次提交是在 2026年11月3日。
pylint 适合用来做什么?
在 Python 项目的 CI 流程中执行代码质量和风格检查。 对遗留代码库逐步检查,先只看错误,再逐步开启更多规则。 通过自定义插件添加项目专属的检查规则。 在编辑器或 IDE 中获取实时的代码检查反馈。
pylint 怎么安装和运行?
使用 pip 安装 pylint: pip install pylint 对你的 Python 代码运行 pylint
在哪里获取 pylint?
源代码和安装说明在 GitHub 上:https://github.com/pylint-dev/pylint

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目