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 thenserá 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 thenbloco seria como o elsebloco de um try-exceptbloco 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 thenbloco 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.
finallyem Java?
thenum pouco confuso. Geralmente thenestá 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