Ruff if-else-block-instead-of-dict-get (SIM401)

if-else-block-instead-of-dict-get в Ruff проверяет код на предупреждение SIM401. Правило относится к группе flake8-simplify.

Почему это неправильно

Упрощённая запись обычно легче читается и снижает риск ошибки в условии или преобразовании.

Если валидатор показывает это предупреждение, исправьте место, на которое указывает Ruff, ориентируясь на смысл правила if-else-block-instead-of-dict-get и пример ниже.

Пример ошибки

if "bar" in foo:
    value = foo["bar"]
else:
    value = 0

Как правильно

value = foo.get("bar", 0)

Автоисправление

Ruff может предложить автоисправление в некоторых случаях.