Pylint

Pylint is a static code analysis tool for the Python programming language. It is named following a common convention in Python of a "py" prefix, and a nod to the C programming lint program. It follows the style recommended by PEP 8, the Python style guide. It is similar to Pychecker and Pyflakes, but includes the following features:
 * Checking the length of each line
 * Checking that variable names are well-formed according to the project's coding standard
 * Checking that declared interfaces are truly implemented.

It is also equipped with the Pyreverse module that allows UML diagrams to be generated from Python code.

It can be used as a stand-alone program, but also integrates with IDEs such as Eclipse with PyDev, Spyder and Visual Studio Code, and editors such as Atom, GNU Emacs and Vim.

It has received favourable reviews.