pycodestyle 0,0,1,1,4,1,2 travis-ci python

Simple Python style checker in one Python file

2 years after MIT

pycodestyle (formerly called pep8) - Python style guide checker

.. image:: :target: :alt: Build status

.. image:: :target: :alt: Documentation Status

.. image:: :target: :alt: Wheel Status

.. image:: :alt: Join the chat at :target:

pycodestyle is a tool to check your Python code against some of the style conventions in PEP 8_.

.. _PEP 8:

.. note::

This package used to be called ``pep8`` but was renamed to ``pycodestyle``
to reduce confusion. Further discussion can be found `in the issue where
Guido requested this
change <>`_, or in the
lightning talk at PyCon 2016 by @IanLee1521:
`slides <>`_
`video <>`_.


  • Plugin architecture: Adding new checks is easy.

  • Parseable output: Jump to error location in your editor.

  • Small: Just one Python file, requires only stdlib. You can use just the file for this purpose.

  • Comes with a comprehensive test suite.


You can install, upgrade, and uninstall with these commands::

$ pip install pycodestyle $ pip install --upgrade pycodestyle $ pip uninstall pycodestyle

There's also a package for Debian/Ubuntu, but it's not always the latest version.

Example usage and output


$ pycodestyle --first E401 multiple imports on one line E302 expected 2 blank lines, found 1 E301 expected 1 blank line, found 0 W602 deprecated form of raising exception E211 whitespace before '(' E201 whitespace after '{' E221 multiple spaces before operator W601 .has_key() is deprecated, use 'in'

You can also make show the source code for each error, and even the relevant text from PEP 8::

$ pycodestyle --show-source --show-pep8 testsuite/ testsuite/ E401 multiple imports on one line import os, sys ^ Imports should usually be on separate lines.

  Okay: import os\nimport sys
  E401: import sys, os

Or you can display how often each error was found::

$ pycodestyle --statistics -qq Python-2.5/Lib 232 E201 whitespace after '[' 599 E202 whitespace before ')' 631 E203 whitespace before ',' 842 E211 whitespace before '(' 2531 E221 multiple spaces before operator 4473 E301 expected 1 blank line, found 0 4006 E302 expected 2 blank lines, found 1 165 E303 too many blank lines (4) 325 E401 multiple imports on one line 3615 E501 line too long (82 characters) 612 W601 .has_key() is deprecated, use 'in' 1188 W602 deprecated form of raising exception


  • Read the documentation <>_

  • Fork me on GitHub <>_

Related Repositories



Official repository for Spyder - The Scientific PYthon Development EnviRonment ...



A tool that automatically formats Python code to conform to the PEP 8 style guid ...



Python support for Visual Studio Code ...



A curated list of static analysis tools, linters and code quality checkers for v ...



A list of awesome linters. ...

Top Contributors

florentx IanLee1521 jcrocholl sigmavirus24 reinout doismellburning gward mtmiller cburroughs daspecster myint SmileyChris ilam yole dpursehouse timleslie jwilk msabramo emonty alecthomas arthall helenst ymattw ArcTanSusan clayg fabioz memeplex benesch adamv alasdairnicol


-   2.0.0 zip tar
-   2.0.0a1 zip tar
-   1.7.0 zip tar
-   1.6.2 zip tar
-   1.6.1 zip tar
-   1.6 zip tar
-   1.5.7 zip tar
-   1.5.6 zip tar
-   1.5.5 zip tar
-   1.5.4 zip tar
-   1.5.3 zip tar
-   1.5.2 zip tar
-   1.5.1 zip tar
-   1.5 zip tar
-   1.4.6 zip tar
-   1.4.5 zip tar
-   1.4.4 zip tar
-   1.4.3 zip tar
-   1.4.2 zip tar
-   1.4.1 zip tar
-   1.4 zip tar
-   1.3.4 zip tar
-   1.3.3 zip tar
-   1.3.2 zip tar
-   1.3.1 zip tar
-   1.3 zip tar
-   1.2 zip tar
-   1.1 zip tar
-   1.0.1 zip tar