Direct naar de hoofdinhoud
Module 1 · Les 3 van 43/36 in de cursus~10 min
Modulelessen (3/4)

Voorwaardelijke bepalingen: if, elif, else

Met Voorwaardelijke kunt u verschillende code uitvoeren op basis van de waarde van een Booleaanse expressie. In Python zijn ze geschreven met if, elif (afkorting voor "anders als") en else.

De basisvorm

Python
eta = 18
if eta >= 18:
    messaggio = "maggiorenne"
else:
    messaggio = "minorenne"

Kennisgeving:

  • na de voorwaarde staat altijd een dubbele punt :;
  • het blok "binnen" de if wordt geïdentificeerd door inspringing (4 spaties);
  • er zijn geen haakjes rond de voorwaarde nodig (hoewel ze wel zijn toegestaan).

Meer vestigingen met elif

Python
voto = 7
if voto >= 9:
    giudizio = "ottimo"
elif voto >= 7:
    giudizio = "buono"
elif voto >= 6:
    giudizio = "sufficiente"
else:
    giudizio = "insufficiente"

De elif vertakkingen worden geëvalueerd in de volgorde waarin u ze schrijft en waar ze stoppen de eerste die waar blijkt te zijn.

Voorwaardelijke expressie (ternair)

Voor eenvoudige gevallen kunt u alles op één regel schrijven:

Python
eta = 20
messaggio = "maggiorenne" if eta >= 18 else "minorenne"

Er staat natuurlijk in het Engels: "maggiorenne if eta >= 18 else minorenne".

Waarden ‘waar’/‘vals’

Een voorwaarde hoeft geen vergelijking te zijn: elke waarde kan dat als voorwaarde gebruiken. Deze worden als onwaar beschouwd: False, None, 0, "", [], {}. Al het andere is waar.

Python
nome = "Ada"
if nome:
    saluto = f"Ciao {nome}!"
else:
    saluto = "Ciao sconosciuto!"

Voorwaardelijke expressies (ternaire operator)

Python ondersteunt een compacte if-else-constructie met één regel, die fungeert als de ternaire operator die in andere talen wordt aangetroffen:

Python
result = "Even" if n % 2 == 0 else "Odd"

Hierdoor blijft uw code beknopt wanneer u eenvoudigweg een waarde moet toekennen op basis van een voorwaarde.

Probeer het zelf

Oefening#python.m1.l3.e1
Pogingen: 0Laden…

Gegeven 'getal = 15', wijs aan 'teken' de string 'positivo' toe als het getal > 0 is, 'nul' als het 0 is, en anders 'negatief'. Evalueer 'teken'.

Editor laden…
Toon hint

Drie takken: > 0, == 0, anders.

Oplossing beschikbaar na 3 pogingen

Oefening beoordelen

Oefening#python.m1.l3.e2
Pogingen: 0Laden…

Gegeven 'leeftijd = 20', wijs aan 'categorie' de string 'maggiorenne' of 'minorenne' toe met behulp van de ternaire expressie (if/else op één regel).

Editor laden…
Toon hint

Syntaxis: waarde_if_true als voorwaarde anders waarde_if_false

Oplossing beschikbaar na 3 pogingen

Extra uitdaging

Oefening#python.m1.l3.e3
Pogingen: 0Laden…

Write a conditional structure that checks if the variable `x` (initialized to `-5`) is greater than 0, less than 0, or equal to 0. Assign the string `'positive'`, `'negative'`, or `'zero'` to `sign` accordingly. Finally, evaluate `sign`.

Editor laden…
Toon hint

Gebruik if x > 0:, elif x < 0:, en else: om de drie gevallen af ​​te handelen.

Oplossing beschikbaar na 3 pogingen