Relationele operatoren
Relationele operatoren worden gebruikt in booleaanse expressies om twee waarden of variabelen te vergelijken.
Booleaanse expressies zullen dus veelal een relationele operator bevatten. Zoals je in de onderstaande voorbeeld ziet
geven booleaanse expressies steeds True of False terug.
| Relationele operator | Python | Voorbeeld | Resultaat |
|---|---|---|---|
| groter dan | > |
41 > 17.62 |
True |
| kleiner dan | < |
"tafel" < "mango" |
False |
| groter dan of gelijk aan | >= |
59.99999 >= 60 |
False |
| kleiner dan of gelijk aan | <= |
"#jane" <= "@jane" |
True |
| gelijk aan | == |
3 == 3.0 |
True |
| verschillend van | != |
True != False |
True |
Nu je weet hoe je een booleaanse expressie programmeert, kan je ze gebruiken als een conditie of voorwaarde in een
if-statement. Om de werkwijze te illusteren, vertrek je opnieuw van het voorbeeld waarbij een groep vrienden
toegangskaartjes voor een evenement wil kopen:
leeftijd = int(input("Geef je leeftijd: "))
aantal = int(input("Hoe groot is vriendengroep? "))
ticketprijs = 7.50
totale_prijs = ticketprijs * aantal
print(f"De toegangsprijs voor de groep van {aantal} vrienden bedraagt € {totale_prijs}.")
Stel dat je 10% korting wil geven wanneer de groep uit minstens 10 personen bestaat. Op een bepaald moment zal het programma een beslissing moeten nemen om de correcte prijs te bepalen.
aantal >= 10 test of de groep uit minstens 10 vrienden bestaat.if geeft aan dat je deze booleaanse expressie wil evalueren.Alleen als het resultaat True is, voert het programma het statement totale_prijs *= 0.9 uit om de prijs met 0.9
te vermenigvuldigen
leeftijd = int(input("Geef je leeftijd: "))
aantal = int(input("Hoe groot is vriendengroep? "))
ticketprijs = 7.50
totale_prijs = ticketprijs * aantal
if aantal >= 10:
totale_prijs *= 0.9
print(f"De toegangsprijs voor de groep van {aantal} vrienden bedraagt € {totale_prijs}.")
Stel nu dat de ticketprijs afhankelijk is van de leeftijd. Als je ouder bent dan 12 jaar betaal je € 7,50 is. In het andere geval betaal je € 5,00.
leeftijd > 12 test of de vrienden ouder zijn dan 12 jaar.if geeft aan dat je deze booleaanse expressie wil evalueren.
True dan voert het programma het statement ticketprijs = 7.50 uit.False dan voert het programma het statement ticketprijs = 5.00 uit (onder else:).Of de groep vrienden nu meer dan 12 jaar oud zijn of niet, het resultaat wordt steeds getoond.
leeftijd = int(input("Geef je leeftijd: "))
aantal = int(input("Hoe groot is vriendengroep? "))
if leeftijd > 12:
ticketprijs = 7.50
else:
ticketprijs = 5.00
totale_prijs = ticketprijs * aantal
print(f"De toegangsprijs voor de groep van {aantal} vrienden bedraagt € {totale_prijs}.")
Het bovenstaande codefragement kan je vereenvoudigen. Je gaat ervan uit dat de ticketprijs steeds gelijk is aan € 7,50.
Wanneer blijkt dat de leeftijd toch niet groter is dan 12 jaar, dan herstel je de fout. In dat geval wordt
ticketprijs = 5.00 uitgevoerd.
leeftijd = int(input("Geef je leeftijd: "))
aantal = int(input("Hoe groot is vriendengroep? "))
ticketprijs = 7.50
if leeftijd <= 12:
ticketprijs = 5.00
totale_prijs = ticketprijs * aantal
print(f"De toegangsprijs voor de groep van {aantal} vrienden bedraagt € {totale_prijs}.")