Porównanie ciągów znaków w Pythonie

Aby porównać dwie lub więcej wartości ciągu w Pythonie, używasz operatorów porównania. Python nie ma żadnych wbudowanych funkcji do porównywania ciągów. Podczas porównywania wartości Python zawsze zwraca „prawda” lub „fałsz”, aby wskazać wynik. Używany format to „wartość1 operator wartość2”. Dokonując porównań, możesz używać ciągów znaków w cudzysłowie lub używać zmiennych z wartościami ciągów.

Operatory porównania

Python ma kilka operatorów porównania, których możesz użyć do porównania dwóch lub więcej wartości łańcuchowych. Operatorów porównania można używać w pętlach lub instrukcjach warunkowych. Użyj „==”, aby sprawdzić, czy dwa ciągi są równe lub „!=”, aby sprawdzić, czy nie są. Możesz także użyć ">", aby sprawdzić, czy pierwszy ciąg jest większy niż drugi, lub "=", aby sprawdzić, czy jest większe lub równe, lub "<=", aby sprawdzić, czy jest mniejsze lub równe sekundzie.

Wideo dnia

Porównania łańcuchowe

Python pozwala połączyć więcej niż jedno porównanie w tym samym wierszu. Na przykład porównywanie „a” > „b” > „c” jest tym samym, co porównywanie „a” > „b”, a zaraz potem „b” > „c”. Python zwraca „prawda”, jeśli wszystkie porównania w łańcuchu zwracają prawdę i „fałsz”, jeśli żadne z nich nie zwraca prawdy. Gdy porównanie okaże się fałszywe, Python nie porównuje reszty łańcucha.

Zachowanie

Python porównuje wszystkie ciągi ciągów leksykograficznie, co oznacza, że ​​„jabłko” jest zawsze mniejsze niż „banan”, czyli mniej niż „wiśnia” i tak dalej. Jednak w porównaniach ciągów rozróżniana jest wielkość liter. Wszystkie wielkie litery są mniejsze niż małe. Na przykład Python określa, że ​​„Zebra” to mniej niż „jabłko”. Aby uniknąć tego zamieszania podczas porównywania ciągi leksykograficznie, tymczasowo przekonwertuj wszystkie ciągi na wielkie lub małe, a następnie porównaj im.

Typy danych

Gdy obiekty mają inny typ, Python próbuje przekonwertować je na ten sam czas w celu porównania. Na przykład porównanie liczby zmiennoprzecinkowej o wartości 10,0 z liczbą całkowitą o wartości 10 zwraca „prawda”, ponieważ są one takie same. Jednak liczba całkowita o wartości 10 to nie to samo, co łańcuch o wartości „10” w cudzysłowie zaznacza i zwraca „fałsz”. Jeśli Python nie może przekonwertować wartości na typowy typ, zawsze zwraca "fałszywe."