Ruff try-consider-else (TRY300)
try-consider-else в Ruff проверяет код на предупреждение TRY300. Правило относится к группе tryceratops.
Почему это неправильно
Правила tryceratops помогают писать обработку исключений так, чтобы ошибки не скрывались и трассировки оставались полезными.
Если валидатор показывает это предупреждение, исправьте место, на которое указывает Ruff, ориентируясь на смысл правила try-consider-else и пример ниже.
Пример ошибки
import logging
def reciprocal(n):
try:
rec = 1 / n
print(f"reciprocal of {n} is {rec}")
return rec
except ZeroDivisionError:
logging.exception("Exception occurred")
Как правильно
import logging
def reciprocal(n):
try:
rec = 1 / n
except ZeroDivisionError:
logging.exception("Exception occurred")
else:
print(f"reciprocal of {n} is {rec}")
return rec
Автоисправление
Ruff не предлагает автоисправление для этого правила.
