Einführung
Sie können Zeichenfolgen in Python mit den Gleichheits (==
) und Vergleichs (<
, >
, !=
, <=
, >=
) Operatoren vergleichen. Es gibt keine speziellen Methoden, um zwei Zeichenfolgen zu vergleichen. In diesem Artikel erfahren Sie, wie jeder der Operatoren beim Vergleich von Zeichenfolgen funktioniert.
Der Python-Zeichenfolgenvergleich vergleicht die Zeichen in beiden Zeichenfolgen nacheinander. Wenn unterschiedliche Zeichen gefunden werden, werden ihre Unicode-Codepunkt-Werte verglichen. Das Zeichen mit dem niedrigeren Unicode-Wert gilt als kleiner.
Python Gleichheits- und Vergleichsoperatoren
Definieren Sie die Zeichenfolgenvariable:
fruit1 = 'Apple'
In der folgenden Tabelle sind die Ergebnisse des Vergleichs identischer Zeichenfolgen (Apple
mit Apple
) mit verschiedenen Operatoren aufgeführt.
Operator | Code | Output |
---|---|---|
Equality | print(fruit1 == 'Apple') |
True |
Not equal to | print(fruit1 != 'Apple') |
False |
Less than | print(fruit1 < 'Apple') |
False |
Greater than | print(fruit1 > 'Apple') |
False |
Less than or equal to | print(fruit1 <= 'Apple') |
True |
Greater than or equal to | print(fruit1 >= 'Apple') |
True |
Beide Zeichenfolgen sind genau gleich. Mit anderen Worten, sie sind gleich. Der Gleichheitsoperator und die anderen gleich zu Operatoren geben True
zurück.
Wenn Sie Zeichenfolgen mit unterschiedlichen Werten vergleichen, erhalten Sie das genaue Gegenteil als Ausgabe.
Wenn Sie Zeichenfolgen vergleichen, die dieselbe Teilzeichenfolge enthalten, wie Apple
und ApplePie
, wird die längere Zeichenfolge als größer betrachtet.
Vergleich der Benutzereingabe zur Auswertung der Gleichheit unter Verwendung von Operatoren
Dieses Beispiel nimmt Code die Benutzereingabe entgegen und vergleicht sie. Das Programm verwendet dann die Ergebnisse des Vergleichs, um zusätzliche Informationen über die alphabetische Reihenfolge der Eingabezeichenfolgen auszugeben. In diesem Fall geht das Programm davon aus, dass die kleinere Zeichenfolge vor der größeren Zeichenfolge kommt.
fruit1 = input('Enter the name of the first fruit:\n')
fruit2 = input('Enter the name of the second fruit:\n')
if fruit1 < fruit2:
print(fruit1 + " comes before " + fruit2 + " in the dictionary.")
elif fruit1 > fruit2:
print(fruit1 + " comes after " + fruit2 + " in the dictionary.")
else:
print(fruit1 + " and " + fruit2 + " are the same.")
Hier ist ein Beispiel für die potenzielle Ausgabe, wenn Sie verschiedene Werte eingeben:
OutputEnter the name of first fruit:
Apple
Enter the name of second fruit:
Banana
Apple comes before Banana in the dictionary.
Hier ist ein Beispiel für die potenzielle Ausgabe, wenn Sie identische Zeichenfolgen eingeben:
OutputEnter the name of first fruit:
Orange
Enter the name of second fruit:
Orange
Orange and Orange are the same.
Hinweis: Damit dieses Beispiel funktioniert, muss der Benutzer entweder nur Großbuchstaben oder nur Kleinbuchstaben für den ersten Buchstaben beider Eingabezeichenfolgen eingeben. Wenn der Benutzer beispielsweise die Zeichenfolgen apple
und Banana
eingibt, lautet die Ausgabe apple kommt nach Banana im Wörterbuch
, was falsch ist.
Diese Diskrepanz tritt auf, weil die Unicode-Codepunktwerte von Großbuchstaben immer kleiner sind als die Unicode-Codepunktwerte von Kleinbuchstaben: Der Wert von a
ist 97 und der Wert von B
ist 66. Sie können dies selbst testen, indem Sie die ord()
-Funktion verwenden, um den Unicode-Codepunktwert der Zeichen auszugeben.
Schlussfolgerung
In diesem Artikel haben Sie gelernt, wie Sie Zeichenfolgen in Python mit den Gleichheits (==
) und Vergleichs (<
, >
, !=
, <=
, >=
) Operatoren vergleichen. Setzen Sie Ihr Lernen über Python-Zeichenfolgen fort.
Source:
https://www.digitalocean.com/community/tutorials/python-string-comparison