Kontrollflyt i Python
Denne artikkelen forklarer kontrollflyt i Python.
YouTube Video
If
-setning i Python
If
-setningen i Python er en syntaks for betinget forgrening. Den brukes til å utføre en blokk med kode hvis en spesifikk betingelse evalueres til True
(sann).
Grunnleggende Syntax
If
-setningen i Python følger i utgangspunktet strukturen nedenfor.
1x = 10
2
3if x > 5: # Check if the condition(x > 5) is True
4 # If the condition is True, execute this code block
5 print("x is greater than 5")
I dette eksempelet blir "x er større enn 5"
skrevet ut hvis variabelen x
er større enn 5.
Else
-setning
Ved å bruke else
etter en if
-setning kan du spesifisere kode som skal kjøres når betingelsen er usann.
1x = 3
2
3if x > 5:
4 print("x is greater than 5")
5else:
6 print("x is less than or equal to 5")
I dette eksempelet vil resultatet være "x er mindre enn eller lik 5"
.
Elif
-setning
Hvis du trenger å sjekke flere betingelser, kan du bruke elif
, som står for "else if".
1x = 5
2
3if x > 5:
4 print("x is greater than 5")
5elif x == 5:
6 print("x is equal to 5")
7else:
8 print("x is less than 5")
I dette eksempelet blir "x er lik 5"
skrevet ut.
Notater
- En kolon (
:
) er påkrevd etterif
,elif
ellerelse
. - Koden som kjøres når en betingelse er sann, må være innrykket. I Python er standard innrykk vanligvis 4 mellomrom, men andre antall mellomrom er også greit så lenge du er konsekvent.
- Du kan bruke alle uttrykk som evalueres til en boolsk verdi som en betingelse. Dette betyr at du kan bruke betingede uttrykk kombinert med sammenlignings- eller logiske operatorer.
Å mestre if
-setningen i Python lar deg kontrollere programflyten på en fleksibel måte.
Flere betingede forgreninger i Python
Det finnes flere måter å implementere en switch
-lignende funksjonalitet i Python, liknende som i andre språk. I Python er det vanlig å bruke if-elif-else
-setninger eller ordbøker for å lage strukturer som ligner en switch
-setning.
Metode 1: if-elif-else
-uttalelse
Den enkleste måten er å bruke if-elif-else
-uttalelsen for betinget forgrening.
1def switch_example(value):
2 if value == 1:
3 return "Value is one"
4 elif value == 2:
5 return "Value is two"
6 elif value == 3:
7 return "Value is three"
8 else:
9 return "Unknown value"
10
11print(switch_example(1)) # Output: Value is one
12print(switch_example(4)) # Output: Unknown value
Metode 2: Bruke ordlister
Ved å kartlegge funksjoner eller verdier til en ordbok, er det mulig å lage en struktur som ligner på en switch
-uttalelse. Dette er praktisk når du vil utføre forskjellige operasjoner for spesifikke verdier.
1def case_one():
2 return "Value is one"
3
4def case_two():
5 return "Value is two"
6
7def case_default():
8 return "Unknown value"
9
10def switch_example(value):
11 switch_dict = {
12 1: case_one,
13 2: case_two
14 }
15
16 # Use get() method to retrieve the corresponding function from the dictionary
17 # If the value is not found in the dictionary, use case_default as a fallback
18 return switch_dict.get(value, case_default)()
19
20print(switch_example(1)) # Output: Value is one
21print(switch_example(3)) # Output: Unknown value
Metode 3: match
-uttalelse (Python 3.10 og nyere)
match
-uttalelsen ble introdusert i Python 3.10. Det er en mønstermatchingssyntaks som gir funksjonalitet som ligner på en switch
-uttalelse.
1def switch_example(value):
2 match value:
3 case 1:
4 return "Value is one"
5 case 2:
6 return "Value is two"
7 case 3:
8 return "Value is three"
9 case _:
10 return "Unknown value"
11
12print(switch_example(1)) # Output: Value is one
13print(switch_example(4)) # Output: Unknown value
Sammendrag
if-elif-else
-uttalelse: Enkel og tilpassbar til mange tilfeller.- Ordlister: Bruk kartlegging av funksjoner eller verdier for å muliggjøre effektiv forgrening.
match
-uttalelse: Tillater mer intuitiv forgrening i Python 3.10 og nyere. Mest lik enswitch
-uttalelse.
For-løkker i Python
for
-setningen i Python brukes til å iterere over hvert element i et itererbart objekt, som en liste, streng eller ordbok. Den grunnleggende syntaksen for en for
-uttalelse er som følger:.
1# Loop through each item in the iterable
2for variable in iterable:
3 # Execute this block of code for each item in the iterable
4 code_to_execute
Her er noen spesifikke eksempler:.
Eksempel med en liste
1fruits = ["apple", "banana", "cherry"]
2for fruit in fruits:
3 print(fruit)
Denne koden kaller print
-funksjonen for hvert element i listen fruits
og skriver ut navnet på hver frukt.
Eksempel med range()
range()
-funksjonen genererer heltall innenfor et spesifisert område og er nyttig for numeriske iterasjoner.
1for i in range(5):
2 print(i)
range(5)
genererer heltall fra 0 til 4. I dette tilfellet vil 0, 1, 2, 3, 4
bli skrevet ut sekvensielt.
Eksempel med en ordbok
For ordbøker blir nøklene iterert som standard, men du kan også hente nøkkel-verdi-par.
1person = {"name": "Alice", "age": 25}
2for key in person:
3 print(key, person[key])
Alternativt kan du bruke items()
-metoden for å hente nøkler og verdier samtidig.
1person = {"name": "Alice", "age": 25}
2for key, value in person.items():
3 print(key, value)
Nestede for
-løkker
Det er også mulig å neste for
-løkker for å utføre komplekse iterasjonsprosesser.
1matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
2for row in matrix:
3 for num in row:
4 print(num)
Denne koden itererer gjennom hver rad i listen matrix
og skriver sekvensielt ut tallene i hver rad.
continue
for å hoppe over en iterasjon og break
for å avslutte en løkke
Å bruke continue
i en for
-løkke vil hoppe over den gjeldende iterasjonen og fortsette til den neste. I tillegg vil bruk av break
avslutte løkken helt.
1for i in range(10):
2 if i == 5:
3 continue
4 if i == 8:
5 break
6 print(i)
I dette eksempelet hopper løkken over når i
er 5 og avsluttes når i
er 8. Dermed vil utdataene være 0, 1, 2, 3, 4, 6, 7
.
for
-løkka i Python er svært fleksibel og kan brukes i en rekke ulike scenarier. Avhengig av hvilken type iterativ prosessering du vil utføre, kan den brukes i kombinasjon med lister, ordbøker, strenger og range()
.
while
-løkke i Python
I Python er while
-løkken en kontrollstruktur som brukes til å gjentatte ganger kjøre kode i blokken så lenge betingelsen er True
. Den grunnleggende syntaksen for en while
-løkke er som følger:.
1while condition:
2 # This block of code will be executed repeatedly as long as the condition is true
3 statement1
4 statement2
5 ...
Eksempel:
I det følgende eksempelet brukes en while
-løkke for å skrive ut tallene fra 1 til 5.
1i = 1
2while i <= 5:
3 print(i)
4 i += 1
Denne koden fungerer som følger.
- Start med
i
som 1, skriv uti
så lenge det er mindre enn eller lik 5, og øki
med 1 for hver gang.
Merk:
Du må huske på følgende punkter når du bruker while
-setningen.
-
Vær oppmerksom på uendelige løkker
- Hvis betingelsen i en
while
-løkke alltid erTrue
, vil det resultere i en uendelig løkke. Egnede operasjoner må utføres for å endre betingelsen; ellers vil programmet ikke stoppe.
- Hvis betingelsen i en
-
Bruk av
break
ogcontinue
:break
brukes når du vil avslutte løkken før tiden.continue
hopper over den nåværende iterasjonen og starter den neste. Vær forsiktig, siden feilaktige løkkebetingelser kan føre til en uendelig løkke.
Eksempel på break
:
1i = 1
2while i <= 5:
3 if i == 3:
4 break # Exit the loop when i becomes 3
5 print(i)
6 i += 1
- I dette tilfellet, etter at
1
og2
er skrevet ut, avsluttes løkken nåri
blir3
.
Eksempel på continue
:
1i = 0
2while i < 5:
3 i += 1
4 if i == 3:
5 # Skip the print statement and move to the next loop iteration when i is 3
6 continue
7 print(i)
- I dette tilfellet hoppes det kun over utskriften for
3
, noe som resulterer i1, 2, 4, 5
. - Ved å øke verdien av
i
i begynnelsen av løkken, går telleren videre selv omcontinue
kjøres, og du unngår en uendelig løkke.
Du kan følge med på artikkelen ovenfor ved å bruke Visual Studio Code på vår YouTube-kanal. Vennligst sjekk ut YouTube-kanalen.