Esiste una differenza di efficienza tra l'utilizzo e in un'istruzione if e l'utilizzo di più istruzioni if? In altre parole, è qualcosa di simileEfficienza Python di e contro più ifs
if expr1 == expr2 and expr3==expr4:
dostuff()
diversa dal punto di vista dell'efficienza, allora:
if expr1 == expr2:
if expr3 == expr4:
dostuff()
mio test molto semplice, non rivela una differenza, ma lo fa qualcuno con più conoscenza (o almeno più approfondita test) ha una risposta definitiva?
http://stackoverflow.com/questions/2539116/python-if-statement-efficiency potrebbe essere correlato. – anijhaw
Non conosco differenze con l'efficienza, ma ciò che dovrebbe essere più importante è la leggibilità del codice. Se è più chiaro usare più istruzioni "if" nidificate, allora fai ciò che pensi abbia senso. – derekerdmann
Si dovrebbe guardare a questo nel disassemblatore se si vuole veramente sapere cosa sta succedendo, ma la prima espressione è altrettanto veloce (potenzialmente più veloce, ma probabilmente non ottimizzata in questo modo) perché Python utilizza la valutazione di cortocircuito. –