Skip to content

if-else-block-instead-of-if-exp (SIM108)#

Derived from the flake8-simplify linter.

Fix is sometimes available.

What it does#

Check for if-else-blocks that can be replaced with a ternary operator.

Why is this bad?#

if-else-blocks that assign a value to a variable in both branches can be expressed more concisely by using a ternary operator.


if foo:
    bar = x
    bar = y

Use instead:

bar = x if foo else y