나는 if-elif-else 컨트롤에 정말 멋진 무언가를 생각하고있었습니다.
if condition:
stuff()
elif condition:
otherstuff()
then:
stuff_that_applies_to_both()
else:
stuff_that_doesnt_aply_to_either()
따라서 기본적으로 then
조건은 else 조건을 제외한 조건이 실행될 때 실행됩니다. 이것이 유용하다고 생각합니까? 파이썬의 try-except-else와 비슷합니다.
나는 당신 중 일부가 매우 예비 구현을 nitpicking 생각합니다. then
블록은 단지 같은 것이 else
A의 블록 try-except
파이썬에서 블록. 내가 제안하는 진정한 이유는 이와 같은 상황 때문입니다.
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
then
단지처럼이 경우 블록은 처음에 범위가 else
있다. 따라서 중첩이 잘 작동합니다. if 문 전에 메서드를 실행해야하는 경우이 사용 사례와는 아무런 관련이 없습니다.
finally
Java에서 와 같이 작동 합니까?
then
약간 혼동이 될 수 있습니다. 일반적으로 다음 then
에 발생합니다 if
. 내 말은, 당신은 말하고 if condition, then stuff()
있지만 말 을 계속then stuff that applies to both