Come completare un'attività in due istruzioni "altro" separate mantenendo ESSENZIALI [duplicato]

1

Qual è il modo migliore per implementare il seguente codice senza avere lo stesso codice duplicato in due blocchi diversi, ma mantenendo l'efficienza e la leggibilità?

if (expression1):
    if (expression2 that can only be checked if expression1):
        doSomething()
    else:
        doSomethingElse()
else:
    doSomethingElse()
    
posta FourOhFour 21.11.2016 - 17:37
fonte

2 risposte

5
if( expression1 and expression2):
 doSomething()
else:
 doSomethingElse()

Poiché Python supporta la valutazione di cortocircuito , Expression2 verrà valutata solo se expression1 è vero.

    
risposta data 21.11.2016 - 17:40
fonte
1

Mi piace la risposta AND, ma potresti anche utilizzare il ritorno anticipato.

if exp1 :
    if exp2 :
        doSomething()
        return

doSomethingElse()
    
risposta data 21.11.2016 - 17:53
fonte

Leggi altre domande sui tag