La vita è prendere le giuste decisioni, ei nostri programmi non ne sono esenti. Bene, alla fine stiamo programmando qualcosa per alcuni aspetti della nostra vita. Pertanto, dovremmo aspettarci di prendere decisioni nei nostri programmi.
Ecco dove dichiarazioni condizionali entrare in gioco. Ci aiutano a prendere tali decisioni dal controllo logico dei nostri programmi. Le istruzioni condizionali in Python sono: Se, Elif, e altro.
Ma cosa fa l'affermazione condizionale? Controlla semplicemente se una dichiarazione (test) è vero o falso, in base a quale decisione viene eseguita.
diversamente da retta programmi in cui le istruzioni vengono eseguite nell'ordine in cui appaiono, programmi di ramificazione consentirci di passare a dichiarazioni indipendentemente dall'ordine, ma in base alla decisione. Le dichiarazioni condizionali menzionate sopra sono considerate di questo tipo di programmi, a condizione che, se è stata eseguita un'istruzione condizionale, l'esecuzione del programma continui nel codice che segue l'istruzione condizionale.
In questa sezione descriverò le diverse parti di cui è composta una dichiarazione condizionale. Una dichiarazione condizionale consiste essenzialmente delle seguenti parti principali:
L'istruzione condizionale in Python si presenta così come segue:
se test: codice altro: codice
dove test è un'espressione booleana, cioè un'espressione che valuta entrambi vero o falso. In altre parole, le dichiarazioni condizionali ci permettono di verificare la veridicità di alcune affermazioni. Vediamo un semplice esempio della struttura di cui sopra:
x = 0 se x == 3: print 'x è uguale a 3' else: print 'x NON è uguale a 3' print 'Questo è tutto!'
Qual è l'output di questo snippet di codice? Vai avanti, provalo.
A questo punto, penso che dovrei menzionare rapidamente dentellatura (spazi), che Python utilizza al contrario delle parentesi graffe in altri linguaggi come C. Nello script precedente, cosa accadrebbe se scriveste l'ultimo stampare
dichiarazione sullo stesso livello sotto il stampare
dichiarazione sopra (il altro
codice)? In altre parole, se lo scrivessimo come segue:
else: print 'x non è uguale a 5' print 'Questo è tutto!'
In questo caso, stampa "Questo è tutto!"
sarà parte del altro
blocco di codice.
Questo è solo un rapido esempio di indentazione, su cui Python si basa ampiamente nella sua sintassi. Quando programmi in Python, dovresti aspettarti che errori come questo compaiano saltuariamente quando c'è un problema con il rientro:
IndentationError: previsto un blocco rientrato
Si dice che l'affermazione condizionale sia nidificato se la vero blocco di codice o falso il blocco di codice (ad es. altro) contiene un'altra istruzione condizionale. Vediamo un esempio di questo:
if course1 == 'Computer Science I': if course2 == 'Computer Science II': print 'lo studente può seguire il corso delle strutture dati' altrimenti: print 'studente non ha i requisiti necessari per seguire il corso delle strutture dati'
Qui abbiamo una dichiarazione condizionale annidata dal primo Se
la dichiarazione contiene un altro Se
dichiarazione al suo interno. Notare nuovamente come il codice è rientrato. Questo è molto critico quando si programma in Python.
Come ricordi, abbiamo menzionato che il test nella struttura dell'istruzione condizionale è un'espressione booleana. A volte potresti aver bisogno di più di un'espressione booleana nello stesso test, e questo è ciò che chiamiamo espressioni booleane composte.
Prendiamo un esempio che trova il numero più piccolo di tre numeri. Si noti che il primo test è un'espressione booleana composta.
se unaIn questo esempio usiamo la terza istruzione condizionale per la prima volta in questo tutorial, cioè
Elif
, che si riferisce a altrimenti se.Abbiamo anche usato un'operazione booleana chiamata
e
, il che significa che tutte le dichiarazioni devono essere vero in modo che venga eseguita la seguente dichiarazione. Le operazioni booleane di Python possono essere riassunte nella seguente tabella:
Operazione booleana | Descrizione |
---|---|
o | la seguente istruzione viene eseguita se qualsiasi espressione è vera |
e | tutte le espressioni devono essere vere per la seguente istruzione da eseguire |
non | l'espressione è falsa se valuta true, e viceversa |
Se hai avuto una dichiarazione (test) con un mix di quelle operazioni, l'ordine di priorità è il seguente: o
corre prima, quindi e
, poi non
.
Prendiamo un altro esempio che mostra come possiamo usare le operazioni booleane con le liste:
list = [1,2,3,4,5] x = 13 se x non in lista: print 'x non è nella lista'
Guarda come abbiamo usato non
in questo esempio? Come sapete, per il blocco di codice nel Se
istruzione da eseguire, l'istruzione (espressione booleana) dovrebbe valutare vero. La dichiarazione inizialmente valuta falso nel nostro caso, dal 13 non appartiene alla lista. Se esegui il programma, tuttavia, noterai che il programma stampare
la dichiarazione è stata eseguita. Come è successo? Questo è successo da quando abbiamo usato il non
operatore, che inverte il valore di valutazione originale. Nel nostro caso, è invertito falso a vero.
So che forse ti stavi chiedendo fino a quando a interruttore
l'esempio arriverà. Forse se hai imparato le dichiarazioni condizionali in un altro linguaggio di programmazione, ti sei confrontato con esempi che mostrano la bellezza dell'uso interruttore
dichiarazioni. Il motivo per cui non ho citato esempi di tali affermazioni è dovuto al fatto che Python non ha interruttore
dichiarazioni!
Per ulteriori informazioni sulle condizioni di Python, è possibile fare riferimento alla documentazione.