So verwenden Sie die Operatoren „Ungleich“ und „Gleich“ in Python
Veröffentlicht: 2022-01-29In Python können Sie die Operatoren „ ungleich “ und „ gleich “ verwenden, um zu prüfen, ob zwei Python-Objekte denselben Wert haben. In diesem Tutorial erfahren Sie, wie Sie diese Operatoren mit vielen Beispielcodes verwenden.
In diesem Tutorial lernen Sie:
- die Syntax des Operators ungleich (
!=
) und Anwendungsfälle, - die Syntax des Gleichheitsoperators (
==
) mit Beispielen und - die Verwendung von
is
undis not
-Operatoren, um die Identität von zwei beliebigen Python-Objekten zu überprüfen.
Lass uns anfangen.
Python-Ungleich-Operator-Syntax
Für zwei beliebige Python-Objekte obj1
und obj2
die allgemeine Syntax zur Verwendung des Ungleichheitsoperators :
<obj1> != <obj2>
- gibt
True
zurück, wenn die Werte vonobj1
undobj2
nicht gleich sind, und - gibt andernfalls
False
zurück.
Hinweis : Wie oben erwähnt, können
obj1
undobj2
Ganzzahlen, Fließkommazahlen, Strings, Listen usw. sein.
Codebeispiele für Python-Ungleich-Operatoren
Lassen Sie uns in diesem Abschnitt einige Beispiele codieren, um den Ungleich -Operator besser zu verstehen.
Verwenden des Python-Not-Equal-Operators für den Vergleich
Hier ist unser erstes Beispiel.
num1 = 27 num2 = 3*9 num1 != num2 # Output: False
Sie können die Codebeispiele in der Geekflare-Python-IDE ausführen – direkt in Ihrem Browser. Oder Sie können wählen, ob Sie es auf Ihrem lokalen Computer ausführen möchten.
Da num1 = 27
und num2
ebenfalls 27
ergeben ( 3*9 = 27
), sind die Werte von num1
und num2
gleich. Der Operator !=
gibt also False
zurück.
Nehmen wir ein anderes Beispiel.
Im folgenden Code wird num1
auf 7 gesetzt. Und num2
wird auf die Zeichenfolge 7 gesetzt. Da es sich um unterschiedliche Datentypen handelt, gibt der Ungleich -Operator True
zurück.
num1 = 7 num2 = "7" num1 != num2 # Output: True
Sie wandeln die Zeichenfolge wie gezeigt in eine Ganzzahl um:
num1 = 7 num2 = int("7") num1 != num2 # Output: False
In diesem Fall können Sie sehen, dass das zurückgegebene Ergebnis False
ist, num1
und num2
jetzt gleich der Ganzzahl 7 sind.
Sie können den Ungleichheitsoperator auch mit Python-Sammlungen wie Listen, Tupeln und Mengen verwenden.
Hinweis : Bei Datensammlungen wie Listen funktioniert der Ungleich-Operator, indem er die Werte einzelner Elemente überprüft. Beispielsweise sind zwei Listen
list1
undlist2
– jede der Längen
– nur gleich, wennlist1[i] == list2[i]
füri
in{0,1,2,3,..n-1}
.
Hier ist ein Beispiel:
list1 = [2,4,6,8] list2 = [2,4,6,9] list1 != list2 # Output: True
Im obigen Beispiel unterscheiden sich list1
und list2
nur durch ein Element. Und der Operator ungleich !=
gibt wie erwartet True
zurück.
Verwenden des Python-Ungleich-Operators in Bedingungen
Sie werden den Ungleich- Operator oft als Teil von Python-Bedingungen verwenden.
Das folgende Code-Snippet zeigt beispielsweise, wie Sie überprüfen können, ob eine Zahl ungerade ist oder nicht.
Eine Zahl, die nicht ohne Rest durch 2 teilbar ist, ist ungerade . Und dies reduziert sich auf die Bedingung
num%2 != 0
.
num = 7 if(num%2 != 0): print("The number is odd.") else: print("The number is even.") # Output: The number is odd.
Sie können Bedingungen auch in Listenverständnissen verwenden, wenn Sie nur die Listenelemente beibehalten möchten, die eine bestimmte Bedingung erfüllen. Im Beispiel unten ist odd_10
die Liste aller ungeraden Zahlen kleiner als 10.
odd = [num for num in range(10) if num%2 != 0] print(odd) # Output: [1, 3, 5, 7, 9]
Und damit ist unsere Diskussion des Ungleichheitsoperators ( !=
) abgeschlossen.
Wie Sie vielleicht schon erraten haben, erzeugt der Gleich- Operator den gegenteiligen Effekt des Ungleich- Operators.
Mehr dazu erfahren Sie im nächsten Abschnitt.
Python-Syntax für Gleichheitsoperatoren
Hier ist die Syntax zur Verwendung des Gleichheitsoperators von Python:
<obj1> == <obj2> #where <obj1> and <obj2> are valid Python objects
- gibt
True
zurück, wenn die Werte vonobj1
undobj2
gleich sind, und - gibt andernfalls
False
zurück.
Codebeispiele für Python-Gleichheitsoperatoren
Der Gleichheitsoperator ( ==
) kann sehr ähnlich wie der Ungleichheitsoperator verwendet werden.
Lassen Sie uns die folgenden Beispiele codieren:
- um zu prüfen, ob zwei Strings gleich sind,
- um zu prüfen, ob eine Zahl gerade ist, und
- Bedingungen im Listenverständnis zu verwenden
Verwenden des Python-Not-Equal-Operators für den Vergleich
Im folgenden Code-Snippet sind str1
und str2
in Bezug auf den Wert gleich. Der Gleichheitsoperator ( ==
) gibt also True
zurück.

str1 = "coding" str2 = "coding" str1 == str2 # Output: True

Lassen Sie uns nun den Gleichheitsoperator in einem bedingten Ausdruck verwenden.
Hinweis : Eine Zahl, die ohne Rest durch 2 teilbar ist, ist gerade . Und im Code reduziert sich dies auf die Bedingung
num%2 == 0
num = 10 if(num%2 == 0): print("The number is even.") else: print("The number is odd.") # Output: The number is even.
Lassen Sie uns nun auf diesem Beispiel aufbauen und das Listenverständnis von Python verwenden, um alle geraden Zahlen kleiner als 10 zu erhalten.
even_10 = [num for num in range(10) if num%2 == 0] print(even_10) # Output: [0, 2, 4, 6, 8]
Im obigen Beispiel
-
range(10)
gibt ein Range-Objekt zurück, das durchlaufen werden kann, um alle Ganzzahlen von 0 bis 9 zu erhalten. - Die Bedingung
num%2 == 0
ist nur für gerade ZahlenTrue
. -
even_10
ist also die Liste aller geraden Zahlen kleiner als 10.
Bisher haben Sie gelernt, wie Sie mit den Operatoren ungleich ( !=
) und gleich ( ==
) auf Gleichheit prüfen.
Im nächsten Abschnitt erfahren Sie, wie Sie die Identität zweier Objekte überprüfen. Sie prüfen, ob zwei Python-Objekte identisch sind.
How to Use Python's is and is not Operators
Wenn Sie ein Anfänger in der Python-Programmierung sind, ist es möglich, dass Sie die Operatoren ==
und is
verwechseln. Lassen Sie uns das in diesem Abschnitt klären.
Im vorherigen Abschnitt hatten wir ein Beispiel, bei dem str1
und str2
gleich waren und der Operator ==
True
zurückgegeben hat.
Führen Sie nun das folgende Code-Snippet aus.
str1 = "coding" str2 = "coding" str1 is str2 # Output: False
Sie können sehen, dass str1 is str2
False
zurückgibt.
Lassen Sie uns einen Schritt zurückgehen und verstehen, was Pythons Operator is
tut.
Der
is
-Operator wirkt auf zwei beliebige Python-Objekte.
Und gibtTrue
nur zurück, wenn die beiden Objekte identisch sind – das heißt, sie verweisen auf dasselbe Objekt im Speicher.
Obwohl str1
gleich str2
ist, ist str1
nicht str2
, da sie auf zwei verschiedene Objekte im Speicher zeigen. Und deshalb haben sie unterschiedliche Identitäten.

In Python können Sie die id()
Funktion verwenden, um die Identität des Objekts abzurufen.
Führen Sie die folgende Codezelle aus, um die Identitäten von str1
und str2
.
id(str1) # Sample output: 139935398870320 id(str2) # Sample output: 139935398871344
Wie Sie sehen können, haben str1
und str2
unterschiedliche Identitäten. Und str1 is str2
gibt wie erwartet False
zurück.
Etwas zusammensetzen,
<obj1> is <obj2> # returns True if and only if id(<obj1>) == id(<obj2>) # returns True
Lassen Sie uns dies schnell überprüfen, wie gezeigt:
str1 = "coding" str2 = str1 print(str1 is str2) print(id(str1) == id(str2)) # Output True True
Intuitiv bewirkt der is not
-Operator das Gegenteil des is
-Operators.
Der
is not
-Operator wirkt auf zwei beliebige Python-Objekte.
Und gibt nur dannFalse
zurück, wenn die beiden Objekte identisch sind – das heißt, sie verweisen auf dasselbe Objekt im Speicher. Andernfalls wirdTrue
zurückgegeben.
Versuchen Sie in den obigen Codebeispielen, is
durch is not
zu ersetzen, und überprüfen Sie die Ergebnisse.
Fazit
Ich hoffe, Sie fanden dieses Tutorial hilfreich.
Zusammenfassend haben Sie gelernt:
- wie man die Operatoren equal (
==
) und not equal (!=
) verwendet, um zu prüfen, ob zwei Python-Objekte denselben Wert haben, - der Unterschied zwischen Gleichheit und Identität von Python-Objekten und
- wie Pythons
is
undis not
-Operatoren helfen bei der Überprüfung, ob zwei Python-Objekte identisch sind.
Erfahren Sie hier, wie Sie Zeitunterschiede berechnen oder ein Schlangenspiel in Python erstellen.
Wir sehen uns alle im nächsten Tutorial. Bis dahin viel Spaß beim Lernen und Programmieren!