pycodestyle (formerly called pep8) - Python style guide checker
pycodestyle is a tool to check your Python code against some of the style conventions in PEP 8.
Features
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 pycodestyle.py file for this purpose.
Comes with a comprehensive test suite.
Installation
You can install, upgrade, and uninstall pycodestyle.py 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 optparse.py
optparse.py:69:11: E401 multiple imports on one line
optparse.py:77:1: E302 expected 2 blank lines, found 1
optparse.py:88:5: E301 expected 1 blank line, found 0
optparse.py:347:31: E211 whitespace before '('
optparse.py:357:17: E201 whitespace after '{'
optparse.py:472:29: E221 multiple spaces before operator
You can also make pycodestyle.py show the source code for each error, and even the relevant text from PEP 8:
$ pycodestyle --show-source --show-pep8 testing/data/E40.py
testing/data/E40.py:2:10: 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)
Links
Release files for pycodestyle 2.15.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pycodestyle-2.15.0.tar.gz | 39.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pycodestyle-2.15.0-py2.py3-none-any.whl | Python 2, Python 3 | none | any | Details |
Total release size: 71.3 kB
Release files / pycodestyle-2.15.0.tar.gz
| Download URL | pycodestyle-2.15.0.tar.gz |
|---|---|
| Size | 39.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
318f5db083869b4c4dad922d0b11124fb27ab181b6730b93371da671e31bd50e
|
|
BLAKE2b-256 checksum How to use checksums |
86df178e41c9ed0ff33c23b3f3757e4e658c889f9abc5ad76ece6cd607b12e9c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.3
|
Release files / pycodestyle-2.15.0-py2.py3-none-any.whl
| Download URL | pycodestyle-2.15.0-py2.py3-none-any.whl |
|---|---|
| Size | 31.6 kB |
| Tags | Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
12fd2f73c7b8ee8845a0431111df8faf4c1a07d6e64e2ee7f0c74014dab14181
|
|
BLAKE2b-256 checksum How to use checksums |
56e2480bcdb153feecde4d736b18c908c7eee4846f11d7547d2e0c71499af630
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.3
|