Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Sammenligning af Strenge | Interaktioner Mellem Datatyper
Practice
Projects
Quizzes & Challenges
Quizzes
Challenges
/
Datatyper i Python

bookSammenligning af Strenge

Strengsammenligninger i Python er som standard store- og småbogstavsfølsomme. Hvis brugerinput kan variere i brugen af store og små bogstaver eller indeholde ekstra mellemrum, bør du normalisere først og derefter sammenligne. En enkel og pålidelig metode er at trimme mellemrum og standardisere store/små bogstaver før ligheds- eller præfiks/suffiks-kontrol.

Store- og småbogstavsfølsom vs. ufølsom

Som standard er "Apple" == "apple" False. For at ignorere store/små bogstaver, 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 stærkere, internationalt kompatibel variant af lower() og er et bedre standardvalg til sammenligninger uden hensyn til store og små bogstaver.

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

Trim og sammenlign

Brugere tilføjer ofte mellemrum ved en fejl. Fjern indledende og afsluttende mellemrum 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

Kontrol af præfiks og suffiks

Anvend startswith og endswith. For kontroller uden hensyn til store/små bogstaver, 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 normaliseringspipeline

Vælg en simpel, gentagelig rækkefølge:

  1. Fjern ydre mellemrum med .strip();
  2. Standardiser store/små bogstaver med .casefold() (eller .lower() hvis du foretrækker det);
  3. Brug derefter ==, in, startswith, endswith eller andre tjek.

1. Hvilken linje udfører et case-insensitivt lighedstjek korrekt?

2. Givet s = " Hello ", hvilket udtryk returnerer True for et case-insensitivt lighedstjek med "hello", hvor der ignoreres omkringliggende mellemrum?

3. Hvilket udsagn er mest præcist for en robust sammenligning uden hensyn til store og små bogstaver?

question mark

Hvilken linje udfører et case-insensitivt lighedstjek korrekt?

Select the correct answer

question mark

Givet s = " Hello ", hvilket udtryk returnerer True for et case-insensitivt lighedstjek med "hello", hvor der ignoreres omkringliggende mellemrum?

Select the correct answer

question mark

Hvilket udsagn er mest præcist for en robust sammenligning uden hensyn til store og små bogstaver?

Select the correct answer

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 4. Kapitel 2

Spørg AI

expand

Spørg AI

ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

bookSammenligning af Strenge

Stryg for at vise menuen

Strengsammenligninger i Python er som standard store- og småbogstavsfølsomme. Hvis brugerinput kan variere i brugen af store og små bogstaver eller indeholde ekstra mellemrum, bør du normalisere først og derefter sammenligne. En enkel og pålidelig metode er at trimme mellemrum og standardisere store/små bogstaver før ligheds- eller præfiks/suffiks-kontrol.

Store- og småbogstavsfølsom vs. ufølsom

Som standard er "Apple" == "apple" False. For at ignorere store/små bogstaver, 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 stærkere, internationalt kompatibel variant af lower() og er et bedre standardvalg til sammenligninger uden hensyn til store og små bogstaver.

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

Trim og sammenlign

Brugere tilføjer ofte mellemrum ved en fejl. Fjern indledende og afsluttende mellemrum 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

Kontrol af præfiks og suffiks

Anvend startswith og endswith. For kontroller uden hensyn til store/små bogstaver, 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 normaliseringspipeline

Vælg en simpel, gentagelig rækkefølge:

  1. Fjern ydre mellemrum med .strip();
  2. Standardiser store/små bogstaver med .casefold() (eller .lower() hvis du foretrækker det);
  3. Brug derefter ==, in, startswith, endswith eller andre tjek.

1. Hvilken linje udfører et case-insensitivt lighedstjek korrekt?

2. Givet s = " Hello ", hvilket udtryk returnerer True for et case-insensitivt lighedstjek med "hello", hvor der ignoreres omkringliggende mellemrum?

3. Hvilket udsagn er mest præcist for en robust sammenligning uden hensyn til store og små bogstaver?

question mark

Hvilken linje udfører et case-insensitivt lighedstjek korrekt?

Select the correct answer

question mark

Givet s = " Hello ", hvilket udtryk returnerer True for et case-insensitivt lighedstjek med "hello", hvor der ignoreres omkringliggende mellemrum?

Select the correct answer

question mark

Hvilket udsagn er mest præcist for en robust sammenligning uden hensyn til store og små bogstaver?

Select the correct answer

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 4. Kapitel 2
some-alt