Jakie są rodzaje metod przedwczesnego wychodzenia z if
klauzuli?
Są chwile, kiedy piszę kod i chcę umieścić break
instrukcję wewnątrz if
klauzuli, tylko po to, aby pamiętać, że mogą one być używane tylko do pętli.
Jako przykład weźmy następujący kod:
if some_condition:
...
if condition_a:
# do something
# and then exit the outer if block
...
if condition_b:
# do something
# and then exit the outer if block
# more code here
Mogę wymyślić jeden sposób, aby to zrobić: zakładając, że przypadki wyjścia mają miejsce w zagnieżdżonych instrukcjach if, zawiń pozostały kod w duży blok else. Przykład:
if some_condition:
...
if condition_a:
# do something
# and then exit the outer if block
else:
...
if condition_b:
# do something
# and then exit the outer if block
else:
# more code here
Problem polega na tym, że więcej lokalizacji wyjścia oznacza więcej zagnieżdżonego / wciętego kodu.
Alternatywnie mógłbym napisać kod, aby if
klauzule były jak najmniejsze i nie wymagały żadnych wyjść.
Czy ktoś zna dobry / lepszy sposób na wyjście z if
klauzuli?
Jeśli są jakieś powiązane klauzule else-if i else, myślę, że zakończenie spowoduje ich pominięcie.
if a: #stuff; #stuff_inbetween; if b: #stuff;
. Kod pośredni zależy od, not a
ale nie zależy od b
.
elif
stackoverflow.com/a/2069680/7045119
elif
?