Я знаком с тройным оператором Python:
value = foo if something else bar
Мой вопрос очень прост: без предварительных назначений, все равно нужно ссылаться на термин, который оценивается в (if ...), из одного из возвращаемых операндов (... if или else ...)?
Мотивация здесь в том, что иногда я использую выражения в if ..., которые именно то, что я хотел бы иметь в результате тройной операции; бывает, хотя для небольших выражений нет проблем, повторяющих его, но для немного более длинных выражений это выглядит несколько неприятно. Возьмем это как пример:
value = info.findNext("b") if info.findNext("b") else "Oompa Loompa"