Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Sammenligne Strenger | Interaksjoner Mellom Ulike Datatyper
Practice
Projects
Quizzes & Challenges
Quizzes
Challenges
/
Datatyper i Python

bookSammenligne Strenger

Strengsammenligninger i Python er som standard store- og småbokstavfølsomme. Hvis brukerinput kan variere i bruk av store og små bokstaver eller inneholde ekstra mellomrom, bør du normalisere først og deretter sammenligne. En enkel og pålitelig fremgangsmåte er å fjerne mellomrom og standardisere bokstavbruk før du utfører likhets- eller prefiks/suffiks-sjekker.

Store- og småbokstavfølsomhet vs. ufølsomhet

Som standard er "Apple" == "apple" False. For å ignorere forskjeller i store og små bokstaver, normaliser begge sider.

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() er en sterkere, internasjonalt tilpasset variant av lower() og er et bedre standardvalg for sammenligninger uten hensyn til store og små bokstaver.

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

Fjern mellomrom og sammenlign

Brukere legger ofte til mellomrom ved en feil. Fjern innledende og etterfølgende mellomrom før sammenligning.

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

Prefiks- og suffikskontroller

Bruk startswith og endswith. For store- og småbokstav-uavhengige kontroller, normaliser først.

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

Konsistent normaliseringsprosess

Velg en enkel, repeterbar rekkefølge:

  1. Fjern ytre mellomrom med .strip();
  2. Standardiser bokstavstorrelse med .casefold() (eller .lower() hvis du foretrekker det);
  3. Bruk deretter ==, in, startswith, endswith eller andre sjekker.

1. Hvilken linje utfører en case-insensitiv likhetssjekk korrekt?

2. Gitt s = " Hello ", hvilket uttrykk returnerer True for en case-insensitiv likhetssjekk med "hello" og ignorerer omkringliggende mellomrom?

3. Hvilket utsagn er mest presist for robust sammenligning uten hensyn til store og små bokstaver?

question mark

Hvilken linje utfører en case-insensitiv likhetssjekk korrekt?

Select the correct answer

question mark

Gitt s = " Hello ", hvilket uttrykk returnerer True for en case-insensitiv likhetssjekk med "hello" og ignorerer omkringliggende mellomrom?

Select the correct answer

question mark

Hvilket utsagn er mest presist for robust sammenligning uten hensyn til store og små bokstaver?

Select the correct answer

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 4. Kapittel 2

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

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 normalization with `startswith` and `endswith`?

bookSammenligne Strenger

Sveip for å vise menyen

Strengsammenligninger i Python er som standard store- og småbokstavfølsomme. Hvis brukerinput kan variere i bruk av store og små bokstaver eller inneholde ekstra mellomrom, bør du normalisere først og deretter sammenligne. En enkel og pålitelig fremgangsmåte er å fjerne mellomrom og standardisere bokstavbruk før du utfører likhets- eller prefiks/suffiks-sjekker.

Store- og småbokstavfølsomhet vs. ufølsomhet

Som standard er "Apple" == "apple" False. For å ignorere forskjeller i store og små bokstaver, normaliser begge sider.

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() er en sterkere, internasjonalt tilpasset variant av lower() og er et bedre standardvalg for sammenligninger uten hensyn til store og små bokstaver.

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

Fjern mellomrom og sammenlign

Brukere legger ofte til mellomrom ved en feil. Fjern innledende og etterfølgende mellomrom før sammenligning.

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

Prefiks- og suffikskontroller

Bruk startswith og endswith. For store- og småbokstav-uavhengige kontroller, normaliser først.

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

Konsistent normaliseringsprosess

Velg en enkel, repeterbar rekkefølge:

  1. Fjern ytre mellomrom med .strip();
  2. Standardiser bokstavstorrelse med .casefold() (eller .lower() hvis du foretrekker det);
  3. Bruk deretter ==, in, startswith, endswith eller andre sjekker.

1. Hvilken linje utfører en case-insensitiv likhetssjekk korrekt?

2. Gitt s = " Hello ", hvilket uttrykk returnerer True for en case-insensitiv likhetssjekk med "hello" og ignorerer omkringliggende mellomrom?

3. Hvilket utsagn er mest presist for robust sammenligning uten hensyn til store og små bokstaver?

question mark

Hvilken linje utfører en case-insensitiv likhetssjekk korrekt?

Select the correct answer

question mark

Gitt s = " Hello ", hvilket uttrykk returnerer True for en case-insensitiv likhetssjekk med "hello" og ignorerer omkringliggende mellomrom?

Select the correct answer

question mark

Hvilket utsagn er mest presist for robust sammenligning uten hensyn til store og små bokstaver?

Select the correct answer

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 4. Kapittel 2
some-alt