pylint-errors

R0911 (too-many-return-statements)

:x: Problematic code:

def foo(x):
    if x == 1:
        return 'This is one.'
    if x == 2:
        return 'This is two.'
    if x == 3:
        return 'This is three.'
    if x == 4:
        return 'This is four.'
    if x == 5:
        return 'This is five.'
    if x == 6:
        return 'This is six.'
    if x == 7:
        return 'This is seven.'

:heavy_check_mark: Correct code:

NUMBERS_TO_STRINGS = {
    1: 'one',
    2: 'two',
    3: 'three',
    4: 'four',
    5: 'five',
    6: 'six',
    7: 'seven'
}


def foo(x):
    return f'This is {NUMBERS_TO_STRINGS.get(x)}.'

Rationale:

Used when a function or method has too many return statement, making it hard to follow.