Run Pylint on a Python project to catch bugs, undefined variables, and style violations before shipping.
Integrate Pylint into your code editor or CI pipeline so code problems are flagged automatically on every save or pull request.
Write a custom Pylint plugin to enforce project-specific rules that built-in checks do not cover.
Generate a diagram of your Python package's class structure using the bundled pyreverse tool.
Install with pip install pylint and run pylint <file>, no external services or configuration required to get first results.
Pylint is a tool that reads Python code and reports problems without running the code. This kind of tool is called a static code analyser, because it works purely by reading and reasoning about the text of your program rather than executing it. It checks for outright errors, flags code that does not follow standard Python style conventions, and points out patterns that can make code harder to understand or maintain. What sets Pylint apart from simpler checking tools is that it does not just scan for surface patterns. It actually tries to understand what values variables hold at different points in the program by doing a form of inference. For example, if you rename an imported library with an alias, Pylint still knows which library is actually being called through that alias. This deeper analysis finds more real problems than tools that only look at obvious mistakes, at the cost of running more slowly. Pylint is installed with a single pip command and can be run from the terminal against any Python file or project. It integrates with most popular code editors and development environments as well. The tool is highly configurable: you can turn off categories of warnings you do not care about, enable stricter checks that are off by default, and write your own custom checks as plugins if you have project-specific rules to enforce. A plugin ecosystem exists for popular third-party libraries like Django and Pydantic. It ships with two additional utilities. One generates diagrams showing the structure of a Python package and its classes. The other detects duplicate code across files. Pylint works on Python 3.10 and later. The README suggests that teams adopting it on an existing codebase start with the most restrictive flags disabled and gradually turn on more checks over time, since running it on a large older project all at once tends to produce an overwhelming number of messages. The project is actively maintained and accepts community contributions.
← pylint-dev on gitmyhub — every repo by this author, as a profile.
Verify against the repo before relying on details.