переход из внутреннего if-else на внешний else

Имеется два условия if-else для python, одно условие содержится внутри другого, как выполнить переход из внутреннего else на строку с внешним else - если возможно?

if True:

        if False:
            pass
        else:   # как отсюда сделать переход

else:
   pass # сюда

вот подробное описание

из строки текста нужно выбрать и вырезать числа

которые имеют фиксированную разрядность =dig

которые могут быть как внутри скобок () в конце строки - ведём поиск справа

и могут быть без скобок в начале строки - поиск слева

поиск в разных направлениях должен сократить время обработки, но пока без замеров

использовать re - не уверен что оправдано

делаем так

if '(' in txt:                      # если скобок нет - начать поиск слева
    ss = txt.rfind('(')
    num = txt[ss + 1: ss + dig + 1] #dig - количество разрядов
    if num.isdigit():               # если в скобках не число - начать поиск слева
        txt = txt.replace(num, '').replace('()', '')

else:
    for i, c in enumerate(txt):
        if c.isdigit():
            num = txt[i:i+dig]
            if num.isdigit():
                txt = txt.replace(num, '')
                break

Ответы (3 шт):

Автор решения: Алексей Белкин

Соглашусь с комментарием, что никак. Возможно автор хотел использовать прыжки, как в других ЯП, но этого питон не умеет.

Единственное, если очень не хочется переделывать логику, то можно сделать очень глупую функцию, в которую запихать что надо делать. И Вызывать ее из 2ух мест:

def stupid_func():
    print(10)
    
if True:
    if False:
        pass
    else:
        stupid_func()# как отсюда сделать переход

else:
   stupid_func() # сюда

Как итог, будет напечатано 10. НО! Еще раз повторюсь - это очень глупо и так не стоит делать!

Лучше изменить логику!

→ Ссылка
Автор решения: Dmitry

Желательно, чтобы вы описали подробнее, так как логически можно разделить на два блока с условиями и не использовать внутренний if, а добавить флаг, что условие для перехода в следующий if было выполнено

if False:
  flag = False
  pass
else:   # как отсюда сделать переход (ваше)
  flag = True

if True and flag:
  # пришли сюда
  pass 
→ Ссылка
Автор решения: CrazyElf

У вас там всё-таки какие-то реальные условия, поэтому перепишу на них:

if cond1:
    if not cond2:
        pass
    else:   # как отсюда сделать переход
else:
    pass # сюда

Это можно записать так, если cond2 известно сразу и между if-ами ничего не происходит:

if cond1 and not cond2:
    pass
else:
    pass # сюда

Если же что-то происходит внутри первого if или cond2 как-то вычисляется внутри, то можно так:

flag = not cond1
if cond1:
    if not cond2:
        pass
    else:   # как отсюда сделать переход
        flag = True
    if not flag:
        # тут ещё какой-то код, который нужно пропустить
if flag:
    pass # сюда
→ Ссылка