PEP 8 Naming Conventions
Check your code against PEP 8 naming conventions.
This module provides a plugin for flake8
, the Python code checker.
(It replaces the plugin flint-naming
for the flint
checker.)
Installation
You can install, upgrade, uninstall pep8-naming
with these commands:
$ pip install pep8-naming $ pip install --upgrade pep8-naming $ pip uninstall pep8-naming
Plugin for Flake8
When both flake8
and pep8-naming
are installed, the plugin is
available in flake8
:
$ flake8 --version 4.0.1 (mccabe: 0.6.1, naming: 0.13.0, pycodestyle: 2.8.0, pyflakes: 2.4.0) CPython 3.8.10 on Linux
By default the plugin is enabled.
Error Codes
These error codes are emitted:
code | sample message |
---|---|
N801 | class names should use CapWords convention (class names) |
N802 | function name should be lowercase (function names) |
N803 | argument name should be lowercase (function arguments) |
N804 | first argument of a classmethod should be named 'cls' (function arguments) |
N805 | first argument of a method should be named 'self' (function arguments) |
N806 | variable in function should be lowercase |
N807 | function name should not start and end with '__' |
N811 | constant imported as non constant (constants) |
N812 | lowercase imported as non-lowercase |
N813 | camelcase imported as lowercase |
N814 | camelcase imported as constant (distinct from N817 for selective enforcement) |
N815 | mixedCase variable in class scope (constants, method names) |
N816 | mixedCase variable in global scope (constants) |
N817 | camelcase imported as acronym (distinct from N814 for selective enforcement) |
N818 | error suffix in exception names (exceptions) |
Options
The following flake8 options are added:
--ignore-names | Ignore errors for specific names or glob patterns. Currently, this option can only be used for N802, N803, N804, N805, N806, N815, and N816 errors. Default: |
--classmethod-decorators | |
 | List of method decorators pep8-naming plugin should consider class method. Used to prevent false N804 errors. Default: |
--staticmethod-decorators | |
 | List of method decorators pep8-naming plugin should consider static method. Used to prevent false N805 errors. Default: |
FAQ
classmethod_decorators
to recognize SQLAlchemy class methods?
How do I configure classmethod_decorators = classmethod declared_attr expression comparator