Strängjämförelse i Python

För att jämföra två eller flera strängvärden i Python använder du jämförelseoperatorer. Python har inga inbyggda funktioner för strängjämförelse. När man jämför värden returnerar Python alltid antingen "true" eller "false" för att indikera resultatet. Formatet du använder är "värde1 operator värde2." När du gör jämförelser kan du använda strängar inom citattecken eller använda variabler med strängvärden.

Jämförelseoperatörer

Python har flera jämförelseoperatorer som du kan använda för att jämföra två eller flera strängvärden. Du kan använda jämförelseoperatorer i loopar eller villkorssatser. Använd "==" för att kontrollera om två strängar är lika eller "!=" för att se om de inte är det. Du kan också använda ">" för att kontrollera om den första strängen är större än den andra eller "=" för att se om det är större än eller lika med, eller "<=" för att kontrollera om det är mindre än eller lika med tvåan.

Dagens video

Kedjebundna jämförelser

Python låter dig koppla ihop mer än en jämförelse på samma rad. Till exempel, att jämföra 'a' > 'b' > 'c' är detsamma som att jämföra 'a' > 'b' och sedan 'b' > 'c' direkt efter. Python returnerar "true" om alla jämförelser i kedjan returnerar sant och "false" om någon inte returnerar sant. När en jämförelse utvärderas till falsk, jämför Python inte resten av kedjan.

Beteende

Python jämför alla strängar lexikografiskt, vilket betyder att "äpple" alltid är mindre än "banan", vilket är mindre än "körsbär" och så vidare. Strängjämförelser är dock skiftlägeskänsliga. Alla stora bokstäver är mindre än gemener. Till exempel bestämmer Python att "Zebra" är mindre än "äpple". För att undvika denna förvirring när man jämför strängar lexikografiskt, konvertera tillfälligt alla strängar till versaler eller gemener och jämför sedan dem.

Datatyper

När objekten har en annan typ, försöker Python konvertera dem till samma tid för jämförelsesyften. Om du till exempel jämför en float med värdet 10,0 med ett heltal med värdet 10 returneras "true" eftersom de är samma. Ett heltal med värdet 10 är dock inte detsamma som en sträng med värdet "10" inom citattecken markerar och returnerar "falskt". Om Python inte kan konvertera värden till en vanlig typ, returnerar den alltid "falsk."