PY3.R0916

Too many boolean expressions

Used when an if statement contains too many boolean expressions.

Noncompliant Code:

Copy
# Maximum number of boolean expressions in an if statement (by default 5)
def foo(x, y, z):
    if (x and y and z) and (x % 2 == 0 and y % 2 == 0 and z % 2 == 0):
        pass

Compliant Code:

Copy
def foo(x, y, z):
    if all([x, y, z]) and set(map(lambda n: n % 2, [x, y, z])).issubset({0}):
        pass

The content on this page is adapted from the Pylint User Guide, Copyright ©2003-2022, Logilab, PyCQA and contributors. All rights reserved. https://pylint.pycqa.org/en/latest/index.html#, and is used under the Python Software Foundation License Version 2. Examples, recipes, and other code in the Pylint documentation are additionally licensed under the Zero Clause BSD License.