Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Vergleich von Zeichenketten | Interaktionen Zwischen Datentypen
Practice
Projects
Quizzes & Challenges
Quizzes
Challenges
/
Datentypen in Python

bookVergleich von Zeichenketten

Zeichenfolgenvergleiche in Python sind standardmäßig groß-/klein-schreibungssensitiv. Wenn Benutzereingaben in der Groß-/Kleinschreibung variieren oder zusätzliche Leerzeichen enthalten können, zuerst normalisieren und dann vergleichen. Eine einfache und zuverlässige Vorgehensweise ist das Entfernen von Leerzeichen und das Vereinheitlichen der Groß-/Kleinschreibung vor Gleichheits- oder Präfix/Suffix-Prüfungen.

Groß-/Kleinschreibungssensitiv vs. -unsensitiv

Standardmäßig ergibt "Apple" == "apple" den Wert False. Um die Groß-/Kleinschreibung zu ignorieren, beide Seiten normalisieren.

12345
# Comparing two email addresses entered with different letter cases email_saved = "Support@Codefinity.com" email_entered = "support@codefinity.COM" print(email_saved.lower() == email_entered.lower()) # True → emails match regardless of case
copy

casefold() ist eine stärkere, international ausgerichtete Variante von lower() und eignet sich besser als Standard für vergleichende, nicht groß-/kleinschreibungsabhängige Operationen.

12345
# Comparing international usernames regardless of letter case username_db = "straße" username_input = "STRASSE" print(username_db.casefold() == username_input.casefold()) # True → matches even with special characters
copy

Kürzen und Vergleichen

Benutzer fügen oft versehentlich Leerzeichen hinzu. Vor dem Vergleich führende und nachfolgende Leerzeichen entfernen.

12345
# Validating a user's role input from a form user_input = " admin " required_role = "ADMIN" print(user_input.strip().casefold() == required_role.casefold()) # True → matches after cleanup and case normalization
copy

Präfix- und Suffix-Prüfungen

Verwendung von startswith und endswith. Für Groß-/Kleinschreibungs-unabhängige Prüfungen zuerst normalisieren.

123456789
# Checking if the uploaded document has the correct format and name uploaded_file = "Report_Final.PDF" # Validate file type (case-insensitive) print(uploaded_file.lower().endswith(".pdf")) # True → valid PDF file # Validate file name prefix (e.g., all reports start with "rep") required_prefix = "rep" print(uploaded_file.strip().casefold().startswith(required_prefix.casefold())) # True → matches prefix ignoring case
copy

Konsistente Normalisierungspipeline

Eine einfache, wiederholbare Reihenfolge wählen:

  1. Äußere Leerzeichen mit .strip() entfernen;
  2. Groß- und Kleinschreibung mit .casefold() (oder .lower() nach Präferenz) vereinheitlichen;
  3. Anschließend ==, in, startswith, endswith oder andere Prüfungen verwenden.

1. Welche Zeile führt einen groß-/kleinschreibungsunabhängigen Gleichheitsvergleich korrekt aus?

2. Gegeben s = " Hello ", welcher Ausdruck liefert True für einen groß-/kleinschreibungsunabhängigen Gleichheitsvergleich mit "hello" unter Ignorieren der umgebenden Leerzeichen?

3. Welche Aussage ist für einen robusten, nicht auf Groß- und Kleinschreibung achtenden Vergleich am zutreffendsten?

question mark

Welche Zeile führt einen groß-/kleinschreibungsunabhängigen Gleichheitsvergleich korrekt aus?

Select the correct answer

question mark

Gegeben s = " Hello ", welcher Ausdruck liefert True für einen groß-/kleinschreibungsunabhängigen Gleichheitsvergleich mit "hello" unter Ignorieren der umgebenden Leerzeichen?

Select the correct answer

question mark

Welche Aussage ist für einen robusten, nicht auf Groß- und Kleinschreibung achtenden Vergleich am zutreffendsten?

Select the correct answer

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 4. Kapitel 2

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

Suggested prompts:

Can you explain the difference between `lower()` and `casefold()` in more detail?

What are some common mistakes to avoid when normalizing strings for comparison?

Can you show more examples of using these normalization techniques in real-world scenarios?

bookVergleich von Zeichenketten

Swipe um das Menü anzuzeigen

Zeichenfolgenvergleiche in Python sind standardmäßig groß-/klein-schreibungssensitiv. Wenn Benutzereingaben in der Groß-/Kleinschreibung variieren oder zusätzliche Leerzeichen enthalten können, zuerst normalisieren und dann vergleichen. Eine einfache und zuverlässige Vorgehensweise ist das Entfernen von Leerzeichen und das Vereinheitlichen der Groß-/Kleinschreibung vor Gleichheits- oder Präfix/Suffix-Prüfungen.

Groß-/Kleinschreibungssensitiv vs. -unsensitiv

Standardmäßig ergibt "Apple" == "apple" den Wert False. Um die Groß-/Kleinschreibung zu ignorieren, beide Seiten normalisieren.

12345
# Comparing two email addresses entered with different letter cases email_saved = "Support@Codefinity.com" email_entered = "support@codefinity.COM" print(email_saved.lower() == email_entered.lower()) # True → emails match regardless of case
copy

casefold() ist eine stärkere, international ausgerichtete Variante von lower() und eignet sich besser als Standard für vergleichende, nicht groß-/kleinschreibungsabhängige Operationen.

12345
# Comparing international usernames regardless of letter case username_db = "straße" username_input = "STRASSE" print(username_db.casefold() == username_input.casefold()) # True → matches even with special characters
copy

Kürzen und Vergleichen

Benutzer fügen oft versehentlich Leerzeichen hinzu. Vor dem Vergleich führende und nachfolgende Leerzeichen entfernen.

12345
# Validating a user's role input from a form user_input = " admin " required_role = "ADMIN" print(user_input.strip().casefold() == required_role.casefold()) # True → matches after cleanup and case normalization
copy

Präfix- und Suffix-Prüfungen

Verwendung von startswith und endswith. Für Groß-/Kleinschreibungs-unabhängige Prüfungen zuerst normalisieren.

123456789
# Checking if the uploaded document has the correct format and name uploaded_file = "Report_Final.PDF" # Validate file type (case-insensitive) print(uploaded_file.lower().endswith(".pdf")) # True → valid PDF file # Validate file name prefix (e.g., all reports start with "rep") required_prefix = "rep" print(uploaded_file.strip().casefold().startswith(required_prefix.casefold())) # True → matches prefix ignoring case
copy

Konsistente Normalisierungspipeline

Eine einfache, wiederholbare Reihenfolge wählen:

  1. Äußere Leerzeichen mit .strip() entfernen;
  2. Groß- und Kleinschreibung mit .casefold() (oder .lower() nach Präferenz) vereinheitlichen;
  3. Anschließend ==, in, startswith, endswith oder andere Prüfungen verwenden.

1. Welche Zeile führt einen groß-/kleinschreibungsunabhängigen Gleichheitsvergleich korrekt aus?

2. Gegeben s = " Hello ", welcher Ausdruck liefert True für einen groß-/kleinschreibungsunabhängigen Gleichheitsvergleich mit "hello" unter Ignorieren der umgebenden Leerzeichen?

3. Welche Aussage ist für einen robusten, nicht auf Groß- und Kleinschreibung achtenden Vergleich am zutreffendsten?

question mark

Welche Zeile führt einen groß-/kleinschreibungsunabhängigen Gleichheitsvergleich korrekt aus?

Select the correct answer

question mark

Gegeben s = " Hello ", welcher Ausdruck liefert True für einen groß-/kleinschreibungsunabhängigen Gleichheitsvergleich mit "hello" unter Ignorieren der umgebenden Leerzeichen?

Select the correct answer

question mark

Welche Aussage ist für einen robusten, nicht auf Groß- und Kleinschreibung achtenden Vergleich am zutreffendsten?

Select the correct answer

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 4. Kapitel 2
some-alt