Eu só estava pensando em algo que seria muito legal de ter nos meus controles if-elif-else.
if condition:
stuff()
elif condition:
otherstuff()
then:
stuff_that_applies_to_both()
else:
stuff_that_doesnt_aply_to_either()
Então, basicamente, um then
será executado quando qualquer uma das condições for executada, EXCETO a condição else. Você acha que isso é útil? É semelhante ao try-except-else do python.
Eu acho que alguns de vocês estão sugerindo uma implementação muito preliminar. O then
bloco seria como o else
bloco de um try-except
bloco em python. A verdadeira razão pela qual sugiro isso é para situações como essa.
m = {}
if condition == '1':
m['condition'] = condition
elif condition2 == '3':
m['condition2'] = condition2
elif condition3 == 'False':
m['condition3'] = True
then:
run_test_that_relies_on_one_of_the_conditions_being_true()
return m
O then
bloco tem o escopo definido para o primeiro, exatamente como o else
é. Portanto, o aninhamento funciona bem. E se você precisar executar um método antes das instruções if, isso realmente não tem nada a ver com este caso de uso.
finally
em Java?
then
um pouco confuso. Geralmente then
está implícito que ocorre após um if
. Quero dizer, você está dizendo, if condition, then stuff()
mas prossegue dizendothen stuff that applies to both