GithubHelp home page GithubHelp logo

pycqa / pep8-naming Goto Github PK

View Code? Open in Web Editor NEW
493.0 16.0 182.0 211 KB

Naming Convention checker for Python

Home Page: pypi.python.org/pypi/pep8-naming

License: Other

Python 100.00%
python naming-conventions pep8 linter-plugin linter-flake8 flake8 flake8-plugin flake8-extensions

pep8-naming's Introduction

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: 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

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.