Skip to main content

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 ‘__’

N808

type variable names should use CapWords convention and an optional ‘_co’ or ‘_contra’ suffix (type variable names)

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: setUp,tearDown,setUpClass,tearDownClass,setUpModule,tearDownModule,asyncSetUp,asyncTearDown,setUpTestData,failureException,longMessage,maxDiff.

--classmethod-decorators

List of method decorators pep8-naming plugin should consider class method.

Used to prevent false N804 errors.

Default: classmethod.

--staticmethod-decorators

List of method decorators pep8-naming plugin should consider static method.

Used to prevent false N805 errors.

Default: staticmethod.

FAQ

How do I configure classmethod_decorators to recognize SQLAlchemy class methods?

classmethod_decorators =
    classmethod
    declared_attr
    expression
    comparator

Metadata

Release files for pep8-naming 0.15.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pep8-naming 0.15.1
File Size Uploaded
pep8_naming-0.15.1.tar.gz 17.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pep8-naming 0.15.1
File Interpreter ABI Platform
pep8_naming-0.15.1-py3-none-any.whl Python 3 none any Details

Total release size: 27.2 kB

Release files / pep8_naming-0.15.1.tar.gz

Download URL pep8_naming-0.15.1.tar.gz
Size 17.6 kB
Tags Source
SHA-256 checksum
How to use checksums
f6f4a499aba2deeda93c1f26ccc02f3da32b035c8b2db9696b730ef2c9639d29
BLAKE2b-256 checksum
How to use checksums
8d59c32862134635ba231d45f1711035550dc38246396c27269a4cde4bfe18d2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.3

Release files / pep8_naming-0.15.1-py3-none-any.whl

Download URL pep8_naming-0.15.1-py3-none-any.whl
Size 9.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
eb63925e7fd9e028c7f7ee7b1e413ec03d1ee5de0e627012102ee0222c273c86
BLAKE2b-256 checksum
How to use checksums
a67825281540f1121acaa78926f599a17ce102b8971bc20b096fa7fb6b5b59c1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.3

Release history Release notifications | RSS feed

This release

0.15.1 This release

2 release files

0.15.0

2 release files

0.14.1

2 release files

0.14.0

2 release files

0.13.3

2 release files

0.13.2

2 release files

0.13.1

2 release files

0.11.1

2 release files

0.11.0

2 release files

0.10.0

2 release files

0.9.1

2 release files

0.9.0

2 release files

0.8.2

2 release files

0.8.1

2 release files

0.8.0

2 release files

0.7.0

2 release files

0.6.1

2 release files

0.6.0

2 release files

0.5.0

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.3

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.2

2 release files

0.2.1

1 release file

0.2

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page