Espressioni Condizionali
In questo capitolo, ci immergiamo in uno degli aspetti più fondamentali della programmazione in Python — le espressioni condizionali usando gli operatori if
, else
ed elif
.
Questi operatori ti permettono di eseguire diversi blocchi di codice basati su condizioni specifiche, dandoti il potere di prendere decisioni all'interno dei tuoi programmi in modo dinamico. Comprendere queste espressioni è cruciale per sviluppare applicazioni che possano reagire efficacemente a vari input e situazioni.
Guarda mentre Alex dimostra la versatilità di queste espressioni condizionali:
L'istruzione if
valuta una condizione ed esegue un blocco di codice se la condizione è True
. Se la condizione non è True
, le istruzioni else
ed elif
(abbreviazione di "else if") possono specificare condizioni aggiuntive da verificare ed eseguire di conseguenza un codice diverso.
Ecco come funzionano:
if
L'istruzione condizionale primaria valuta se una condizione è True
. Inizia una sequenza condizionale. Le istruzioni if
possono apparire solo una volta all'inizio di una sequenza. Se la condizione è valutata come True
, il blocco di codice indentato che segue l'istruzione if
verrà eseguito.
elif
Abbreviazione di "else if", l'istruzione elif
fornisce condizioni aggiuntive da verificare se le condizioni iniziali if
o qualsiasi condizione elif
precedente erano False
. Puoi includere più istruzioni elif
dopo un'istruzione if
per gestire vari scenari, ciascuno con la propria condizione.
else
Questo agisce come un catch-all per i casi non specificamente affrontati dalle condizioni if
ed elif
precedenti. Ci può essere solo un'istruzione else
alla fine di una sequenza di istruzioni if
, e non richiede una condizione.
Applicazioni di esempio
Iniziamo con una semplice istruzione if
/ else
per prendere una decisione basata su una singola condizione. Qui, stiamo cercando di determinare se un articolo di drogheria deve essere rifornito in base al suo livello di scorte attuale:
# Stock level of an item stock_level = 15 # Simple `if`/`else` to check stock levels if stock_level < 20: print("Stock is low") else: print("Stock is okay")
Questo diagramma di flusso dimostra i percorsi decisionali che il tuo interprete Python seguirebbe nell'esempio precedente if-else
:
Successivamente, utilizziamo l'istruzione elif
in un'applicazione leggermente più complessa. In questa applicazione, usiamo le istruzioni if
/ elif
/ else
per applicare tassi di sconto basati sui costi totali per incoraggiare vendite maggiori.
# Initial conditions totalCost = 150 # Applying discounts based on purchase amount if totalCost >= 200: print("20% discount applied") elif totalCost >= 100: print("10% discount applied") else: print("No discount for purchases under $100")
Questo diagramma di flusso visualizza il processo di applicazione degli sconti basato sul costo totale utilizzando le istruzioni if
, elif
, else
:
Nella prossima applicazione, introduciamo condizioni if-else
annidate per dimostrare un processo decisionale più granulare. Incorporando una struttura if-else
all'interno di un'altra, siamo in grado di prendere una serie di decisioni basate su criteri multipli.
Questo esempio pratico illustra come un negozio di alimentari potrebbe gestire l'inventario basato sul tipo di prodotto e su condizioni specifiche, come i giorni dalla consegna o i livelli di stock.
# Initial conditions product = 'Non-Perishable' stock = 70 # Determine the handling of products based on type and condition if product == 'Perishable': if daysDelivered >= 4: print("Not fresh - Initiate discount") else: print("Product is fresh") elif product == 'Non-Perishable': if stock > 100: print("Consider discount") else: print("No discount needed") else: print("The product is not specified")
Il seguente diagramma ad albero decisionale rappresenta visivamente la logica if-else
annidata utilizzata nell'esempio di codice precedente:
Alcune Note di Sintassi
Quando si scrivono istruzioni condizionali in Python, è essenziale aderire a specifiche regole di sintassi. Potresti aver notato il ruolo critico dei due punti :
e dell'indentazione nella creazione di condizioni eseguibili.
Esaminiamo il ruolo che questi piccoli dettagli giocano:
Due Punti
Pensa al due punti alla fine di un'istruzione if
, elif
o else
come a un segnale che dice, "Ecco cosa fare dopo se la condizione che ho appena menzionato è vera." Il due punti funge da segnale, marcando chiaramente dove iniziano le istruzioni.
Indentazione
Quando la condizione sopra un blocco di codice indentato è True
, tutte le righe di codice indentate sotto di essa vengono eseguite. Se non è True
, Python salta questi passaggi e cerca la prossima condizione.
Anche se possono sembrare dettagli minori, sono cruciali per garantire che il tuo codice venga eseguito correttamente. Man mano che diventi più familiare con Python, queste pratiche diventeranno una seconda natura.
Ottimo lavoro nel comprendere questi aspetti fondamentali di Python! La tua comprensione di come strutturare correttamente le istruzioni di controllo pone una solida base per affrontare compiti di programmazione più complessi. Ora, mettiamo alla prova le tue nuove competenze con una sfida completa che ti permetterà di applicare ciò che hai imparato in uno scenario pratico.
Swipe to start coding
Crea un semplice sistema di strategia di sconto per un negozio di alimentari che applica sconti in base al tipo di prodotto e al giorno della settimana.
- Usa le variabili di input
product_type
eday_of_week
. - Implementa istruzioni condizionali per verificare:
- Se
product_type
è"Fruits"
eday_of_week
è"Monday"
, stampa uno sconto del 10% sulla frutta; - Se
product_type
è"Vegetables"
eday_of_week
è"Tuesday"
, stampa uno sconto del 15% sulle verdure; - Se
product_type
è"Dairy"
eday_of_week
è"Wednesday"
, stampa uno sconto del 20% sui latticini; - Se
product_type
è"Other"
, stampa"No discount available."
; - Usa
else
per gestire altri casi in cui nessuna condizione è soddisfatta.
- Se
Requisiti di Output
- Stampa messaggi come:
"10% discount on Fruits today!"
per ogni condizione che corrisponde. - Se
product_type
è"Other"
, stampa"No discount available."
- Se nessuna condizione è soddisfatta, stampa
"No special discounts today."
Soluzione
Grazie per i tuoi commenti!