Maison > développement back-end > Tutoriel Python > Comparaison Python Aucune : 'est' ou == ?

Comparaison Python Aucune : 'est' ou == ?

Mary-Kate Olsen
Libérer: 2024-11-13 02:51:02
original
678 Les gens l'ont consulté

Python None Comparison:

Comparaison Python None : "is" ou ==?

Comparer des variables à None est une opération courante en Python. Cependant, vous avez peut-être remarqué une différence dans la syntaxe utilisée, ce qui amène à se demander s'il faut utiliser "is" ou ==.

En général, il est recommandé d'utiliser "is" lors de la comparaison de variables avec Aucune. . La raison en est que "is" vérifie l'identité de l'objet, tandis que == vérifie l'égalité des objets. En Python, il n'y a qu'un seul objet None, donc comparer n'importe quoi à None en utilisant "is" retournera toujours True s'il s'agit du même objet.

D'un autre côté, == vérifie l'égalité des objets. Cela signifie qu'il renverra True si les deux objets sont égaux, même s'il ne s'agit pas du même objet. Par exemple, considérons le code suivant :

class Negator(object):
    def __eq__(self, other):
        return not other

thing = Negator()
print(thing == None)  # True
print(thing is None)  # False
Copier après la connexion

Dans cet exemple, la classe Negator définit une méthode eq qui renvoie True lorsque les objets ne sont pas égaux. Lorsque vous comparez thing à None en utilisant ==, la méthode personnalisée eq est appelée, ce qui donne True. Cependant, en comparant using is, nous voyons qu'il ne s'agit pas du même objet, ce qui donne False.

Par conséquent, si vous vérifiez strictement si un objet est identique à None (c'est-à-dire si vous vérifiez la nullité), il est recommandé d'utiliser "est". Si, toutefois, vous vérifiez l'égalité (c'est-à-dire si deux objets ont la même valeur), vous devez utiliser ==.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal