L'opérateur is en Python
En Python, l'opérateur is
est utilisé pour comparer des objets.
Plus précisément, is
compare l'identité des objets, c'est-à-dire leur emplacement mémoire.
Si deux objets ont la même identité, alors ils réfèrent au même objet.
Cela signifie que, si vous modifiez un objet, tous les autres objets qui réfèrent au même objet seront également modifiés.
Comparaison avec l'opérateur d'égalité
L'opérateur d'égalité en Python est ==
.
Contrairement à is
, il compare la valeur des objets. Cela signifie que deux objets peuvent avoir la même valeur, mais ne pas référer au même objet.
En revanche, si deux objets ont la même identité, leur valeur est toujours égale.
Exemple d'utilisation de l'opérateur is
Voici un exemple d'utilisation de l'opérateur is
:
a = [1, 2, 3]
b = a
print(b is a) # True
Dans cet exemple, a
et b
réfèrent au même objet. Par conséquent, l'opérateur is
renvoie True
.
Exemple d'utilisation de l'opérateur d'égalité
Voici maintenant un exemple d'utilisation de l'opérateur d'égalité :
a = [1, 2, 3]
b = [1, 2, 3]
print(b == a) # True
Dans cet exemple, a
et b
ont la même valeur, mais réfèrent à des objets différents. L'opérateur d'égalité renvoie True
car les valeurs des objets sont similaires.
Attention à ne pas confondre is et ==
Il est important de ne pas confondre is
et ==
.
Si on reprend l'exemple précédent :
a = [1, 2, 3]
b = [1, 2, 3]
print(b is a) # False
print(b == a) # True
Dans cet exemple, a
et b
ont la même valeur mais il s'agit de deux objets différents, l'opérateur is
renvoie False
, contrairement à l'opérateur ==
.
Conclusion
L'opérateur is
est utile pour la comparaison d'identité d'objets en Python. Il est important de ne pas le confondre avec l'opérateur d'égalité, qui compare les valeurs d'objets plutôt que leur identité.