Vergelijkingsoperatoren
Vergelijkingen stellen uw programma in staat om ja/nee-vragen te stellen over waarden:
- Zijn deze hetzelfde?
 - Is dit groter?
 - Valt dit getal binnen een bereik?
 
Een vergelijking geeft een Boolean terug (True of False) en vormt de basis van if/while-logica.
De basisprincipes
Python biedt zes vergelijkingsoperatoren (==, !=, <, <=, >, >=) om gelijkheid en volgorde tussen waarden te testen; elke vergelijking evalueert naar True of False.
Gelijkheid — ==
Controleert of twee waarden gelijk zijn.
12print(5 == 5) # True print("apple" == "Apple") # False (case matters)
= wijst een waarde toe aan een variabele, terwijl == twee waarden vergelijkt.
Ongelijkheid — !=
Controleert of twee waarden verschillend zijn.
12print(5 != 3) # True print("cat" != "cat") # False
Groter dan — >
Waar als de linkerwaarde strikt groter is dan de rechterwaarde.
12print(7 > 9) # False print(12 > 3) # True
Kleiner dan — <
Waar als de linkerwaarde strikt kleiner is dan de rechterwaarde.
12print(2 < 10) # True print("a" < "b") # True (lexicographic order)
Groter dan of gelijk aan — >=
Waar als de linkerwaarde groter of gelijk is aan de rechterwaarde.
12print(7 >= 7) # True print(4 >= 9) # False
Kleiner dan of gelijk — <=
Waar als de linkerwaarde kleiner of gelijk is aan de rechterwaarde.
12print(10 <= 9) # False print(5 <= 5) # True
Gekoppelde vergelijkingen
Python maakt het mogelijk om bereiken op een natuurlijke manier te schrijven:
0 < x < 10 betekent "x is groter dan 0 en kleiner dan 10".
In de achtergrond werkt dit als (0 < x) and (x < 10).
123x = 7 print(0 < x < 10) # True print(5 <= x <= 7) # True
Dit leest overzichtelijk en voorkomt herhaling van x.
Fijnmazigheid van drijvende-kommagetallen (kleine afrondingsfouten)
Sommige decimalen (zoals 0.1) kunnen niet exact worden weergegeven in binair. Daarom kan strikte gelijkheid bij floats onverwachte resultaten opleveren.
1print(0.1 + 0.2 == 0.3) # False in many environments
Bij het vergelijken van floats op "gelijkheid" verdient een tolerantietest de voorkeur.
12import math print(math.isclose(0.1 + 0.2, 0.3, rel_tol=1e-9)) # True
Hier wordt niet "exact gelijk" bedoeld, maar "voldoende dicht in de buurt".
Strings vergelijken (hoofdlettergebruik en volgorde)
Stringvergelijkingen zijn hoofdlettergevoelig en lexicografisch (teken voor teken volgens Unicode-volgorde).
12print("apple" == "Apple") # False (case matters) print("apple" < "banana") # True ("a" comes before "b")
Voor hoofdletterongevoelige controles beide zijden eerst normaliseren.
12s1, s2 = "Hello", "heLLo" print(s1.lower() == s2.lower()) # True
1. Vul de lege plekken in met True of False:
2. Welke enkele expressie controleert correct dat x tussen 1 en 5 inclusief ligt (met chaining)?
3. Welke stringvergelijking is True?
Bedankt voor je feedback!
Vraag AI
Vraag AI
Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.
Can you explain more about how chained comparisons work in Python?
What are some common pitfalls when comparing floating-point numbers?
How do I perform a case-insensitive string comparison in Python?
Awesome!
Completion rate improved to 5
Vergelijkingsoperatoren
Veeg om het menu te tonen
Vergelijkingen stellen uw programma in staat om ja/nee-vragen te stellen over waarden:
- Zijn deze hetzelfde?
 - Is dit groter?
 - Valt dit getal binnen een bereik?
 
Een vergelijking geeft een Boolean terug (True of False) en vormt de basis van if/while-logica.
De basisprincipes
Python biedt zes vergelijkingsoperatoren (==, !=, <, <=, >, >=) om gelijkheid en volgorde tussen waarden te testen; elke vergelijking evalueert naar True of False.
Gelijkheid — ==
Controleert of twee waarden gelijk zijn.
12print(5 == 5) # True print("apple" == "Apple") # False (case matters)
= wijst een waarde toe aan een variabele, terwijl == twee waarden vergelijkt.
Ongelijkheid — !=
Controleert of twee waarden verschillend zijn.
12print(5 != 3) # True print("cat" != "cat") # False
Groter dan — >
Waar als de linkerwaarde strikt groter is dan de rechterwaarde.
12print(7 > 9) # False print(12 > 3) # True
Kleiner dan — <
Waar als de linkerwaarde strikt kleiner is dan de rechterwaarde.
12print(2 < 10) # True print("a" < "b") # True (lexicographic order)
Groter dan of gelijk aan — >=
Waar als de linkerwaarde groter of gelijk is aan de rechterwaarde.
12print(7 >= 7) # True print(4 >= 9) # False
Kleiner dan of gelijk — <=
Waar als de linkerwaarde kleiner of gelijk is aan de rechterwaarde.
12print(10 <= 9) # False print(5 <= 5) # True
Gekoppelde vergelijkingen
Python maakt het mogelijk om bereiken op een natuurlijke manier te schrijven:
0 < x < 10 betekent "x is groter dan 0 en kleiner dan 10".
In de achtergrond werkt dit als (0 < x) and (x < 10).
123x = 7 print(0 < x < 10) # True print(5 <= x <= 7) # True
Dit leest overzichtelijk en voorkomt herhaling van x.
Fijnmazigheid van drijvende-kommagetallen (kleine afrondingsfouten)
Sommige decimalen (zoals 0.1) kunnen niet exact worden weergegeven in binair. Daarom kan strikte gelijkheid bij floats onverwachte resultaten opleveren.
1print(0.1 + 0.2 == 0.3) # False in many environments
Bij het vergelijken van floats op "gelijkheid" verdient een tolerantietest de voorkeur.
12import math print(math.isclose(0.1 + 0.2, 0.3, rel_tol=1e-9)) # True
Hier wordt niet "exact gelijk" bedoeld, maar "voldoende dicht in de buurt".
Strings vergelijken (hoofdlettergebruik en volgorde)
Stringvergelijkingen zijn hoofdlettergevoelig en lexicografisch (teken voor teken volgens Unicode-volgorde).
12print("apple" == "Apple") # False (case matters) print("apple" < "banana") # True ("a" comes before "b")
Voor hoofdletterongevoelige controles beide zijden eerst normaliseren.
12s1, s2 = "Hello", "heLLo" print(s1.lower() == s2.lower()) # True
1. Vul de lege plekken in met True of False:
2. Welke enkele expressie controleert correct dat x tussen 1 en 5 inclusief ligt (met chaining)?
3. Welke stringvergelijking is True?
Bedankt voor je feedback!