Pep8 Naming Save

Naming Convention checker for Python

Project README

PEP 8 Naming Conventions

Check your code against PEP 8 <https://www.python.org/dev/peps/pep-0008/>_ 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) | +---------+-----------------------------------------------------------------+

.. _class names: https://www.python.org/dev/peps/pep-0008/#class-names .. _constants: https://www.python.org/dev/peps/pep-0008/#constants .. _exceptions: https://www.python.org/dev/peps/pep-0008/#exception-names .. _function names: https://www.python.org/dev/peps/pep-0008/#function-and-variable-names .. _function arguments: https://www.python.org/dev/peps/pep-0008/#function-and-method-arguments .. _method names: https://www.python.org/dev/peps/pep-0008/#method-names-and-instance-variables

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

.. _SQLAlchemy: https://www.sqlalchemy.org/
Open Source Agenda is not affiliated with "Pep8 Naming" Project. README Source: PyCQA/pep8-naming

Open Source Agenda Badge

Open Source Agenda Rating