Ruff if-else-block-instead-of-dict-lookup (SIM116)
if-else-block-instead-of-dict-lookup в Ruff проверяет код на предупреждение SIM116. Правило относится к группе flake8-simplify.
Почему это неправильно
Упрощённая запись обычно легче читается и снижает риск ошибки в условии или преобразовании.
Если валидатор показывает это предупреждение, исправьте место, на которое указывает Ruff, ориентируясь на смысл правила if-else-block-instead-of-dict-lookup и пример ниже.
Пример ошибки
if x == 1:
return "Hello"
elif x == 2:
return "Goodbye"
else:
return "Goodnight"
Как правильно
return {1: "Hello", 2: "Goodbye"}.get(x, "Goodnight")
Автоисправление
Ruff не предлагает автоисправление для этого правила.
