Ik voer het volgende uit in de Python-interpreter:
>>> foo = 10
>>> dir(foo) == dir(10)
True
>>> dir(foo) is dir(10)
False
>>>
Waarom is dit?
Antwoord 1, autoriteit 100%
is
controleert of 2 argumenten naar hetzelfde object verwijzen, ==
controleert of 2 argumenten dezelfde waarde hebben. dir()
retourneert een list
die dezelfde gegevens bevat voor zowel foo
als 10
, maar de werkelijke list
instanties voor de 2 dingen zijn verschillend.