Это не ясно из вашего вопроса, но если когда-либо может быть только один набор внешних фигурных скобок на любом уровне (т. Е. "{My name} {is {Adam}}"
и "{My {name} is {Adam}}"
являются недействительными входными данными), вы можете воспользоваться тем фактом, что вы хотитеэто последняя открывающая скобка в предложении.
def deepest(sentence):
intermediate = sentence.rpartition("{")[-1]
return intermediate[:intermediate.index("}")]
deepest("{My name is {Adam} and I don't work here}")
# 'Adam'
deepest("{Someone {set us {{up} the bomb}!}}")
# 'up'
Ответ на регулярное выражение также делает это предположение, хотя регулярное выражение, вероятно, будет намного медленнее.Если возможно несколько внешних скобок, уточните свой вопрос.