If - Else annidati
Fa parte della sezione Fondamenti del percorso Python di Coddy. Lezione 23 di 77.
Le istruzioni if-else annidate ti consentono di verificare più condizioni inserendo un'istruzione if-else all'interno di un'altra. Puoi annidare un blocco if all'interno di un blocco else. Questo è uno schema comune e valido in Python.
Crea un'istruzione if-else di base:
age = 18
title = "None"
if age >= 18:
title = "Adult"
else:
title = "Minor"Ora aggiungiamo una condizione annidata all'interno del blocco else:
age = 18
title = "None"
allowed_to_drink = False
if age >= 18:
title = "Adult"
else:
title = "Minor"
if age >= 13:
title = "Teenager"
else:
title = "Child"Puoi anche annidare una condizione all'interno del blocco if:
age = 25
title = "None"
allowed_to_drink = False
if age >= 18:
title = "Adult"
if age >= 21:
allowed_to_drink = True
else:
allowed_to_drink = False
else:
title = "Minor"In entrambi gli esempi, l'if-else interno viene eseguito solo quando viene eseguito il blocco che lo contiene: quello nel blocco else viene eseguito quando age >= 18 è falso, e quello nel blocco if viene eseguito quando age >= 18 è vero. Inserire un'istruzione if all'interno di un blocco else (o all'interno di un blocco if) è perfettamente valido. È proprio questo che lo rende «annidato».
Sfida
PrincipianteScrivi un programma che determini l'idoneità a vedere un film in base all'età e alla presenza di un genitore.
Nota: age e with_parent sono già impostati per te, con valori diversi in ogni caso di test. Non impostarli tu, usali e basta.
Il tuo compito:
Usa istruzioni if-else annidate per impostare la variabile message su una delle seguenti stringhe:
- Se age è 18 o più, imposta
messagesu"You can watch any movie". - Se age è minore di 18:
- Se
with_parentèTrue, impostamessagesu"You can watch PG-13 movies". - Se
with_parentèFalse, impostamessagesu"You can only watch G-rated movies".
- Se
Importante: Poiché with_parent è già un booleano, controllalo direttamente (ad esempio, if with_parent:): non confrontarlo con una stringa come "true" o "True".
Importante: Le stringhe devono corrispondere esattamente, comprese maiuscole e punteggiatura. Ad esempio, usa "PG-13 movies" (con la 'm' minuscola), non "PG-13 Movies".
Provalo tu
# Scrivi qui il tuo codice if-else annidato
Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Fondamenti
4Operatori Parte 2
Operatori logici Parte 1Operatori logici Parte 2Riepilogo - Logica sempliceOperatori logici Parte 3Operatori logici Parte 47Calcolatore per dividere il conto
Messaggio di benvenutoAcquisire i dati10FizzBuzz con un tocco speciale
Panoramica del giocoLa funzione FizzBuzz2Variabili
NumeriStringaBooleanoConvenzioni di denominazioneVariabili vuoteRipasso - Inizializzare le variabili8Cicli
Ciclo forCiclo whileBreakContinueRipasso - FattorialeLa funzione rangeCiclo annidatoRipasso - Input dinamico3Operatori Parte 1
Operatori aritmeticiOperatore moduloScorciatoie aritmeticheRipasso - Matematica sempliceOperatori di confronto6Input/output di base
OutputOutput con variabiliInputConversione di tipoRipasso - Fino a 120Ripasso - Vero o falso9Funzioni
Dichiarare una funzioneArgomentiValore restituitoRiepilogo - Funzione SigmaRiepilogo - Funzione di validazioneValori predefinitiEsercitati da solo: Compilatore Python online