python code static checker
It’s not just a linter that annoys you!
Pylint is a Python static code analysis tool which looks for programming errors, helps enforcing a coding standard, sniffs for code smells and offers simple refactoring suggestions.
It’s highly configurable, having special pragmas to control its errors and warnings from within your code, as well as from an extensive configuration file. It is also possible to write your own plugins for adding your own checks or for extending pylint in one way or another.
It’s a free software distributed under the GNU General Public Licence.
Development is hosted on GitHub: https://github.com/PyCQA/pylint/
You can use the firstname.lastname@example.org mailing list to discuss about Pylint. Subscribe at https://mail.python.org/mailman/listinfo/code-quality/ or read the archives at https://mail.python.org/pipermail/code-quality/
Pull requests are amazing and most welcome.
Pylint can be simply installed by running:
pip install pylint
If you are using Python 3.6+, upgrade to get full support for your version:
pip install pylint --upgrade
If you want to install from a source distribution, extract the tarball and run the following command
python setup.py install
Do make sure to do the same for astroid, which is used internally by pylint.
For debian and rpm packages, use your usual tools according to your Linux distribution.
More information about installation and available distribution format can be found here.
The documentation lives at http://pylint.pycqa.org/.
Pylint is shipped with following additional commands:
- pyreverse: an UML diagram generator
- symilar: an independent similarities checker
- epylint: Emacs and Flymake compatible Pylint
We use tox for running the test suite. You should be able to install it with:
pip install tox pytest
To run the test suite for a particular Python version, you can do:
tox -e py27
For more detailed information, check the documentation.
Release history Release notifications | RSS feed
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.