Kursusindhold
Betingede Udsagn i Python
Betingede Udsagn i Python
Introduktion til Python If-Elif-Else Udsagn
if-elif-else
-sætningen er et kraftfuldt værktøj i Python, der giver dig mulighed for at kontrollere flere betingelser og udføre forskellige kodeblokke baseret på, hvilken betingelse der er sand. Det er særligt nyttigt, når du har flere betingelser at evaluere, men kun ønsker, at én kodeblok skal køre.
Når du skal vælge mellem flere betingelser, foretrækkes elif
frem for flere if
-sætninger. Dette skyldes, at elif
sikrer, at når en betingelse er opfyldt, springes resten af betingelserne over, hvilket forbedrer effektiviteten. I modsætning hertil resulterer brugen af flere if
-sætninger i, at alle betingelser evalueres uafhængigt, hvilket kan føre til unødvendige kontroller og redundant kode.
Lad os spore en brugers søvnvarighed og kategorisere den i forskellige intervaller. Vi vil kontrollere, om brugeren har nået deres søvnmål, er tæt på at nå det, eller har brug for mere hvile.
hours_slept = 6 sleep_goal = 8 if hours_slept < 0: print("Sleep hours cannot be negative.") if hours_slept >= sleep_goal: print("Great job! You've met your sleep goal!") if hours_slept >= sleep_goal - 2: print("You're almost there! Keep going, you'll reach your goal soon!") if hours_slept < sleep_goal - 2: print("You need more rest. Try to sleep a bit longer tonight.")
I denne version evalueres alle betingelser uafhængigt, selvom en betingelse allerede er sand. Dette fører til redundante kontroller. For eksempel, hvis brugeren allerede har nået deres mål, kontrollerer koden stadig, om de er tæt på målet eller har brug for mere hvile.
hours_slept = 6 sleep_goal = 8 if hours_slept < 0: print("Sleep hours cannot be negative.") elif hours_slept >= sleep_goal: print("Great job! You've met your sleep goal!") elif hours_slept >= sleep_goal - 2: print("You're almost there! Keep going, you'll reach your goal soon!") else: print("You need more rest. Try to sleep a bit longer tonight.")
Brugen af elif
hjælper med at gøre koden mere læsbar og effektiv, da når en betingelse er opfyldt, behøver ingen yderligere betingelser at blive kontrolleret.
Dette diagram visualiserer flowet af en if-elif-else
beslutningsstruktur i Python. Processen starter med at evaluere den indledende if
-betingelse:
Hvis den første betingelse er sand, udføres koden inde i
if
-blokken;Hvis den første betingelse er falsk, går den videre til den næste betingelse, som er
elif
. Hviselif
-betingelsen er sand, udføres den tilsvarendeelif
-blok;Hvis den første
elif
er falsk, kan en andenelif
kontrolleres, og hvis den er sand, udføres dens respektive kodeblok;Hvis ingen af
if
- ellerelif
-betingelserne er opfyldt (dvs. alle er falske), udføres den endeligeelse
-blok, hvilket sikrer, at en kodeblok altid køres.
Dette flow sikrer, at kun den første sande betingelse udføres, hvilket giver en ren og effektiv måde at håndtere flere betingelser på. if-elif-else
-strukturen undgår overflødige kontroller, og kun én kodeblok udføres fra hele strukturen.
1. Hvad er fordelen ved at bruge if-elif-else
i stedet for flere if
-udsagn?
2. Hvad vil blive udskrevet fra følgende kode?
Tak for dine kommentarer!