В подобных ситуациях , если после исключения есть общий путь выполнения, я обычно делаю что-то подобное (что имеет определенный if/else
-тишный штрих к нему до назначения напеременная):
try:
price = get_min_price(product)
except Exception as ex:
print("could not get price for product {}: {}".format(product, ex))
price = 1000000.0
print(f"price = {price}")
if price <= min_price:
send_price_alert(user, product, price)
Однако, чаще всего я структурирую свой код так, что любые переменные, заполненные в блоке try
, я не буду использовать после except
block:
try:
price = get_min_price(product)
print(f"price = {price}")
if price <= min_price:
send_price_alert(user, product, price)
except Exception as ex:
print("could not get price for product {}: {}".format(product, ex))
Здесь price
не используется после ключевого слова except
, что устраняет необходимость инициализации.