Есть ли способ продолжить выполнение кода в предложении try, даже если возникло исключение?
Это пример кода.
outer_margin = 0.125 # Default Amazon
safe_zone = 0.25 # Default Amazon
safe_spine = 0.0625 # Default Amazon
if custom_measure is not None:
if isinstance(custom_measure, dict):
try:
outer_margin = custom_measure["outer_margin"]
safe_zone = custom_measure["safe_zone"]
safe_spine = custom_measure["safe_spine"]
except KeyError as e:
logger.warning("Key {} not found, default value used.".format(e))
Все три значения являются необязательными, поэтому ключ outer_margin
может не существовать, но может присутствовать safe_zone
. Я хотел бы достичь safe_zone
, даже если вызов outer_margin
вызывает исключение. Есть ли способ сделать это в одном блоке try / Кроме? Что-то вроде:
# Not valid syntax
try:
outer_margin = custom_measure["outer_margin"]
try:
safe_zone = custom_measure["safe_zone"]
except KeyError as e:
pass
Я уже нашел другое решение для случая в примере, но теперь мне любопытно узнать, есть ли способ продолжить вниз на один блок попытки / исключения, даже если возбуждается исключение.