У меня есть небольшой фрагмент кода с двумя функциями. Я хочу вызвать первую функцию, если она получает ответ, а затем выполнить функцию для этого ответа. Затем присвойте результат другой переменной.
В подробном виде это выглядит так:
result = get_something()
if result:
answer = transform(result)
в качестве альтернативы я мог бы сделать
if get_something():
answer = transform(get_something())
, но это требует вызова первогоФункция дважды
есть ли способ сделать все это в одной строке, как троичный (может быть, как лямбда)
answer = transform(result) if get_something() else None
Очевидно, что в приведенном выше нет ничего, чтобы утверждать, чторезультат, но я должен сказать, в основном, где result = get_something()
Я могу сделать это в понимании списка, но это кажется немного глупым
answer = [transform(x) for x in [get_something()] if x][0]