Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Leer Identiteit Versus Gelijkheid | Booleans en Vergelijkingen
Gegevenstypen in Python

bookIdentiteit Versus Gelijkheid

Dit hoofdstuk maakt onderscheid tussen identiteit en gelijkheid. Identiteit bepaalt of twee variabelen naar hetzelfde object in het geheugen verwijzen; gelijkheid bepaalt of twee objecten dezelfde waarde hebben. Inzicht in dit verschil is essentieel voor het schrijven van correcte conditionals, validaties en gegevensverwerkingslogica.

Wat is is?

  • is controleert de objectidentiteit — of twee variabelen naar hetzelfde object in het geheugen verwijzen;
  • == controleert gelijkheid van waarden — of twee objecten dezelfde inhoud hebben.
1234567
a = [1, 2] b = [1, 2] c = a print(a == b) # True - same contents print(a is b) # False - different list objects print(a is c) # True - c refers to the very same list as a
copy

Wanneer is te gebruiken en wanneer te vermijden

  • Gebruik is bij vergelijking met singletons zoals None;
123
value = None if value is None: print("No value")
copy
  • is not is de ontkennende identiteitscontrole;
123
var = 64 if var is not None: print("var has a value: ", var)
copy
  • Vermijd het gebruik van is om gelijkheid tussen getallen of strings te controleren. Door interne caching/interning kan identiteit soms "werken", maar dit is niet betrouwbaar over verschillende uitvoeringen en omgevingen; gebruik in plaats daarvan ==;
123456789
x = 256 y = 256 print(x == y) # True (same value) print(x is y) # May appear True; do not rely on identity here s1 = "hello" s2 = "he" + "llo" print(s1 == s2) # True print(s1 is s2) # Implementation detail; avoid using is here
copy
  • Geef bij booleans de voorkeur aan waarheidswaardetoetsen.
123
flag = True if flag: # clearer than: if flag is True print("flag is True")
copy

1. Vul de lege plekken in met is of ==:

2. Wat is de juiste manier om te testen op "geen waarde"?

3. Welke uitspraak is aanbevolen?

question-icon

Vul de lege plekken in met is of ==:

Use to check if two variables point to the same object.
Use
to check if two values have the same contents.

Click or drag`n`drop items and fill in the blanks

question mark

Wat is de juiste manier om te testen op "geen waarde"?

Select the correct answer

question mark

Welke uitspraak is aanbevolen?

Select the correct answer

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 2. Hoofdstuk 3

Vraag AI

expand

Vraag AI

ChatGPT

Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.

Awesome!

Completion rate improved to 5

bookIdentiteit Versus Gelijkheid

Veeg om het menu te tonen

Dit hoofdstuk maakt onderscheid tussen identiteit en gelijkheid. Identiteit bepaalt of twee variabelen naar hetzelfde object in het geheugen verwijzen; gelijkheid bepaalt of twee objecten dezelfde waarde hebben. Inzicht in dit verschil is essentieel voor het schrijven van correcte conditionals, validaties en gegevensverwerkingslogica.

Wat is is?

  • is controleert de objectidentiteit — of twee variabelen naar hetzelfde object in het geheugen verwijzen;
  • == controleert gelijkheid van waarden — of twee objecten dezelfde inhoud hebben.
1234567
a = [1, 2] b = [1, 2] c = a print(a == b) # True - same contents print(a is b) # False - different list objects print(a is c) # True - c refers to the very same list as a
copy

Wanneer is te gebruiken en wanneer te vermijden

  • Gebruik is bij vergelijking met singletons zoals None;
123
value = None if value is None: print("No value")
copy
  • is not is de ontkennende identiteitscontrole;
123
var = 64 if var is not None: print("var has a value: ", var)
copy
  • Vermijd het gebruik van is om gelijkheid tussen getallen of strings te controleren. Door interne caching/interning kan identiteit soms "werken", maar dit is niet betrouwbaar over verschillende uitvoeringen en omgevingen; gebruik in plaats daarvan ==;
123456789
x = 256 y = 256 print(x == y) # True (same value) print(x is y) # May appear True; do not rely on identity here s1 = "hello" s2 = "he" + "llo" print(s1 == s2) # True print(s1 is s2) # Implementation detail; avoid using is here
copy
  • Geef bij booleans de voorkeur aan waarheidswaardetoetsen.
123
flag = True if flag: # clearer than: if flag is True print("flag is True")
copy

1. Vul de lege plekken in met is of ==:

2. Wat is de juiste manier om te testen op "geen waarde"?

3. Welke uitspraak is aanbevolen?

question-icon

Vul de lege plekken in met is of ==:

Use to check if two variables point to the same object.
Use
to check if two values have the same contents.

Click or drag`n`drop items and fill in the blanks

question mark

Wat is de juiste manier om te testen op "geen waarde"?

Select the correct answer

question mark

Welke uitspraak is aanbevolen?

Select the correct answer

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 2. Hoofdstuk 3
some-alt