String manipulation och jämförelser är ofta en viktig del av alla datorprogram eller webbplats manus . Python har några olika sträng funktioner och metoder som finns att använda för att jämföra strängar , men ingen av dem är inte skiftlägeskänsliga . Men du kan kombinera vissa funktioner tillgängliga för att skapa dina egna case - okänsliga metoder strängjämförelse . Jämförelse
När man jämför två strängar , använd den " övre " eller " lägre " metod för att temporärt omvandla de två strängar till versaler eller gemener , sedan använda dubbla likhetstecken operatören att jämföra de två strängar till varje andra . Skriv till exempel " var1.lower ( ) == var2.lower ( ) " för att jämföra dem . Det är en boolesk operation som returnerar antingen sant eller falskt . Om de två strängarna har samma tecken och skiljetecken , oavsett fallet returnerar denna jämförelse sant . Annars returneras false .
Funktion
Du kan skapa en skiftlägeskänslig funktion strängjämförelse och använda det i din Python -program . Definiera funktionen att acceptera två strängvariabler som parametrar , och sedan skriva en if-sats som konverterar både till gemener och använder dubbla likhetstecknet operatören att jämföra dem . Om de två strängarna är lika , har funktionen returnera ett värde för att informera användaren de två är lika , och om strängarna är inte lika , informera användaren på lämpligt sätt . Alternativt kan du helt enkelt skriva " retur var1.lower ( ) == var2.lower ( ) " som den enda raden i funktionen att återvända bara sant eller falskt .
Prestanda
Medan detta användardefinierade , skiftlägesoberoende strängjämförelse fungerar snabbt jämför två strängar för jämställdhet , behöver den också att allokera utrymme i minnet för tillfällig förvaring av de två strängarna konverterade till gemener . Programmet förstör dessa två objekt så snart som funktionen utgångar. De första strängarna själva förblir oförändrade , med " lägre " metod för jämförelse ändrar inte sina värderingar så att du kan använda dem på andra ställen i programmet utan att behöva ändra något tillbaka
Använder
.
behovet av en skiftlägeskänslig strängjämförelse funktionen finns i flera situationer . Till exempel kan du använda den i en webb script där du visar användaren en CAPTCHA-bild med bokstäver och siffror , och du behöver honom för att skriva in dem för att validera sin identitet . Generellt har dessa bilder inte bryr sig om små bokstäver , så en skiftlägeskänslig jämförelse här fungerar . Ett annat exempel handlar om en sökning script där du uppmana användaren att söka efter något genom att skriva in sökord . Eftersom han inte bryr sig om brevet fallet och bara vill ha sina resultat , med en skiftlägeskänslig jämförelse kan du returnera de resultat som bäst passar sökningen .