Operator Logici in Python
In precedenza, sono state analizzate situazioni che coinvolgono una singola condizione nell'istruzione if. Ora, si approfondiscono scenari in cui è necessario valutare più condizioni.
Istruzioni if annidate
Un approccio consiste nell'utilizzare istruzioni if annidate, come mostrato nell'esempio:
123456steps_taken = 8000 calories_burned = 300 if steps_taken >= 5000: if calories_burned >= 500: print("Excellent work! You hit your daily fitness goals.")
Tuttavia, fare affidamento in modo eccessivo su condizioni if annidate non è considerato una buona pratica. Uno sviluppatore esperto preferisce utilizzare operatori logici invece di annidare le condizioni.
Utilizzo degli operatori logici
Gli operatori logici consentono di combinare più condizioni in modo più efficiente.
Il linguaggio Python dispone di tre operatori logici: not, and, or.
12345steps_taken = 8000 calories_burned = 300 if steps_taken >= 5000 and calories_burned >= 500: print("Excellent work! You hit your daily fitness goals.")
L'operatore not
not si applica a una condizione e ne inverte il valore.
1234steps_taken = 0 if not steps_taken: print("No steps recorded yet. Time to get moving!")
Nella sintassi di Python, ogni valore "vuoto" è equivalente a False, e qualsiasi valore "non vuoto" è equivalente a True. Ad esempio:
- 0 è False, 1 è True;
- [] è False, [1] è True;
- "" è False, "a" è True;
- ecc.
Operatore logico and
La condizione con and è soddisfatta solo se entrambe le condizioni sono True.
123456steps_taken = 8000 calories_burned = 600 hydration_level = 2 if steps_taken >= 5000 and calories_burned >= 500 and hydration_level >= 2: print("Amazing! You've achieved all your fitness goals for the day.")
Operatore logico or
La condizione con or è vera se almeno una delle due (o più) condizioni specificate è True.
Supponiamo di voler celebrare i piccoli successi. Se raggiungi almeno uno dei tuoi obiettivi, stampa un messaggio motivazionale.
123456steps_taken = 8000 calories_burned = 200 hydration_level = 2 if steps_taken >= 10000 or calories_burned >= 500 or hydration_level >= 2: print("Great job! You're making progress on your fitness journey.")
Qui, il hydration_level soddisfa la condizione, quindi l'istruzione if viene eseguita. Ricorda, con l'operatore or, basta che una sola condizione sia True.
1. In un'app di monitoraggio fitness, si desidera verificare se un utente raggiunge sia l'obiettivo giornaliero di passi che quello di calorie. Quale operatore logico dovresti usare?
2. Come verificheresti se l'utente raggiunge almeno uno dei suoi obiettivi fitness?
Grazie per i tuoi commenti!
Chieda ad AI
Chieda ad AI
Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione
Awesome!
Completion rate improved to 6.67
Operator Logici in Python
Scorri per mostrare il menu
In precedenza, sono state analizzate situazioni che coinvolgono una singola condizione nell'istruzione if. Ora, si approfondiscono scenari in cui è necessario valutare più condizioni.
Istruzioni if annidate
Un approccio consiste nell'utilizzare istruzioni if annidate, come mostrato nell'esempio:
123456steps_taken = 8000 calories_burned = 300 if steps_taken >= 5000: if calories_burned >= 500: print("Excellent work! You hit your daily fitness goals.")
Tuttavia, fare affidamento in modo eccessivo su condizioni if annidate non è considerato una buona pratica. Uno sviluppatore esperto preferisce utilizzare operatori logici invece di annidare le condizioni.
Utilizzo degli operatori logici
Gli operatori logici consentono di combinare più condizioni in modo più efficiente.
Il linguaggio Python dispone di tre operatori logici: not, and, or.
12345steps_taken = 8000 calories_burned = 300 if steps_taken >= 5000 and calories_burned >= 500: print("Excellent work! You hit your daily fitness goals.")
L'operatore not
not si applica a una condizione e ne inverte il valore.
1234steps_taken = 0 if not steps_taken: print("No steps recorded yet. Time to get moving!")
Nella sintassi di Python, ogni valore "vuoto" è equivalente a False, e qualsiasi valore "non vuoto" è equivalente a True. Ad esempio:
- 0 è False, 1 è True;
- [] è False, [1] è True;
- "" è False, "a" è True;
- ecc.
Operatore logico and
La condizione con and è soddisfatta solo se entrambe le condizioni sono True.
123456steps_taken = 8000 calories_burned = 600 hydration_level = 2 if steps_taken >= 5000 and calories_burned >= 500 and hydration_level >= 2: print("Amazing! You've achieved all your fitness goals for the day.")
Operatore logico or
La condizione con or è vera se almeno una delle due (o più) condizioni specificate è True.
Supponiamo di voler celebrare i piccoli successi. Se raggiungi almeno uno dei tuoi obiettivi, stampa un messaggio motivazionale.
123456steps_taken = 8000 calories_burned = 200 hydration_level = 2 if steps_taken >= 10000 or calories_burned >= 500 or hydration_level >= 2: print("Great job! You're making progress on your fitness journey.")
Qui, il hydration_level soddisfa la condizione, quindi l'istruzione if viene eseguita. Ricorda, con l'operatore or, basta che una sola condizione sia True.
1. In un'app di monitoraggio fitness, si desidera verificare se un utente raggiunge sia l'obiettivo giornaliero di passi che quello di calorie. Quale operatore logico dovresti usare?
2. Come verificheresti se l'utente raggiunge almeno uno dei suoi obiettivi fitness?
Grazie per i tuoi commenti!