HOWTO · Python
Groß-/Kleinschreibung unempfindlicher Zeichenketten Vergleich in Python
Es gibt drei Hauptmethoden, um einen case-insensitive String-Vergleich in Python durchzuführen, nämlich lower(), upper() und casefold().
In diesem Tutorial werden einige Methoden besprochen, um einen case-insensitive Vergleich von zwei oder mehr String-Variablen in Python durchzuführen.
Groß-/Kleinschreibung unempfindlicher Zeichenketten Vergleich mit der Methode lower()
Python string hat eine eingebaute lower()-Methode, die alle Zeichen in der Zeichenkette in Kleinbuchstaben umwandelt. Sie gibt eine Zeichenkette zurück, in der alle Zeichen in Kleinbuchstaben umgewandelt sind. Wir können zwei Zeichenketten mit der Methode lower() in Kleinbuchstaben umwandeln und sie dann case-insensitiv vergleichen.
normal_str1 = "Hello World!"
lower_str1 = normal_str1.lower()
print(lower_str1)
Ausgabe:
hello world!
Machen Sie nun das Gleiche mit der zweiten String-Variablen normal_str2.
normal_str2 = "HELLO WORLD!"
lower_str2 = normal_str2.lower()
print(lower_str2)
Ausgabe:
hello world!
Wie wir sehen, wurden beide Strings in alle Kleinbuchstaben umgewandelt. Im nächsten Schritt werden die beiden String-Variablen verglichen und die Ausgabe angezeigt.
normal_str1 = "Hello World!"
lower_str1 = normal_str1.lower()
normal_str2 = "HELLO WORLD!"
lower_str2 = normal_str2.lower()
if lower_str1 == lower_str2:
print("Both variables are equal")
else:
print("Both variables are not equal")
Ausgabe:
Both variables are equal
Groß-/Kleinschreibung unempfindlicher String-Vergleich mit der Methode upper()
In der letzten Sitzung wurde vorgestellt, wie man den case-insensitive String-Vergleich mit der Methode lower() durchführt. Die Logik hinter der Verwendung der upper()-Methode ist die gleiche. Wir wollen in beiden Methoden die vorhandenen String-Variablen entweder in Groß- oder Kleinbuchstaben ändern. Die Methode upper() ist die eingebaute Methode der String-Klasse, um alle Zeichen einer String-Variablen in Großbuchstaben umzuwandeln.
normal_str1 = "Hello World!"
upper_str1 = normal_str1.upper()
normal_str2 = "hello world!"
upper_str2 = normal_str2.upper()
if upper_str1 == upper_str2:
print("Both variables are equal")
else:
print("Both variables are not equal")
Ausgabe:
Both variables are equal
Groß-/Kleinschreibung unempfindlicher String-Vergleich mit der Methode casefold()
Die Methode casefold() ist eine aggressivere Methode zur Umwandlung einer String-Variablen in Kleinbuchstaben. Ein Beispiel,
Es gibt einen deutschen Buchstaben, 'ß', der bereits ein Kleinbuchstabe ist. Also macht die Methode lower() nichts mit 'ß'. Aber casefold() wandelt 'ß' in "ss" um.
normal_str = "ß"
casefold_str = normal_str.casefold()
lower_str = normal_str.lower()
print("Case folded form of ß is : " + casefold_str)
print("Lower cased form of ß is : " + lower_str)
Ausgabe:
Case folded form of ß is : ss
Lower cased form of ß is : ß
Die Methode casefold() gibt eine String-Variable zurück, in der alle Zeichen aggressiv in Kleinbuchstaben umgewandelt werden. Diese neue String-Variable kann dann verglichen werden, um einen case-insensitive Vergleich durchzuführen.
normal_str1 = "Hello World ß!"
casefold_str1 = normal_str1.casefold()
normal_str2 = "Hello World ss!"
casefold_str2 = normal_str2.casefold()
if casefold_str1 == casefold_str2:
print("Both variables are equal")
else:
print("Both variables are not equal")
Ausgabe:
Both variables are equal