Porovnanie reťazcov v Pythone

Na porovnanie dvoch alebo viacerých reťazcových hodnôt v Pythone môžete použiť porovnávacie operátory. Python nemá žiadne vstavané funkcie na porovnávanie reťazcov. Pri porovnávaní hodnôt Python vždy vracia buď "true" alebo "false" na označenie výsledku. Formát, ktorý používate, je "hodnota1 operátora hodnota2." Pri porovnávaní môžete použiť reťazce v úvodzovkách alebo použiť premenné s hodnotami reťazcov.

Porovnávacie operátory

Python má niekoľko porovnávacích operátorov, ktoré môžete použiť na porovnanie dvoch alebo viacerých hodnôt reťazca. Operátory porovnávania môžete použiť v cykloch alebo podmienených príkazoch. Použite "==" na kontrolu, či sú dva reťazce rovnaké, alebo "!=", ak chcete zistiť, či nie sú. Môžete tiež použiť ">" na kontrolu, či je prvý reťazec väčší ako druhý, alebo "=" zistite, či je väčšia alebo rovná, alebo pomocou "<=" skontrolujte, či je menšia alebo rovná sekunde.

Video dňa

Reťazové porovnania

Python vám umožňuje spojiť viac ako jedno porovnanie v rovnakom riadku. Napríklad porovnanie „a“ > „b“ > „c“ je rovnaké ako porovnanie „a“ > „b“ a potom „b“ > „c“ hneď potom. Python vráti hodnotu „true“, ak všetky porovnania v reťazci vrátia hodnotu true a „false“, ak niektoré z nich nevráti hodnotu true. Keď sa porovnanie vyhodnotí ako nepravdivé, Python neporovnáva zvyšok reťazca.

Správanie

Python lexikograficky porovnáva reťazce všetkých reťazcov, čo znamená, že „jablko“ je vždy menšie ako „banán“, čo je menej ako „čerešňa“ atď. Porovnania reťazcov však rozlišujú veľké a malé písmená. Všetky veľké písmená sú menšie ako malé písmená. Napríklad Python určí, že „zebra“ je menšia ako „jablko“. Aby nedošlo k tomuto zmätku pri porovnávaní reťazce lexikograficky, dočasne skonvertujte všetky reťazce na veľké alebo malé písmená a potom porovnajte ich.

Typy údajov

Keď majú objekty iný typ, Python sa ich pokúsi previesť na rovnaký čas na účely porovnania. Napríklad porovnanie float s hodnotou 10,0 s celým číslom s hodnotou 10 vráti "true", pretože sú rovnaké. Celé číslo s hodnotou 10 však nie je to isté ako reťazec s hodnotou „10“ v úvodzovkách označí a vráti hodnotu „false“. Ak Python nedokáže previesť hodnoty na bežný typ, vždy sa vráti "falošné."