В Python сравнение строк производится стандартными операторами сравнения:
< — «меньше»;
> — «больше»;
<= — «меньше или равно»;
>= — «больше или равно»;
!= — «не равно»;
== — «равно».
Сравнение строк в Python
Не будем углубляться, для чего нужно сравнение строк в Python; главное, что такая возможность существует. Строкой в Питоне называют набор символов, которые заключены в одинарные или двойные кавычки.
Сравнение строк в Python имеет ряд особенностей, которые отличаются от числового сравнения языка — при сравнении строк обязательно принимается во внимание регистр и символы в строке, например:
цифры по умолчанию будут «меньше», чем любой другой символ;
верхний регистр символа будет по умолчанию «меньше», чем нижний регистр;
если в строке находятся алфавитные символы в одинаковом регистре, то будет учитываться их алфавитный порядок;
сравнение начинается с первого символа;
если первые символы — это числа, то сравниваются их значения;
если первые символы полностью одинаковы, то будут сравниваться вторые символы; если и эти одинаковы, то будут сравниваться третьи символы и т. д.
Для людей регистр редко имеет значение для определения смысла написанного, а для компьютера регистр очень важен. Поэтому иногда, чтобы сравнение строк не зависело от регистра, применяют специальную функцию для строк, которая приводит все символы к одному регистру, например:
lower(), чтобы привести символы строки к нижнему регистру;
upper(), чтобы привести символы строки к верхнему регистру.
Сравнение строк в Python: примеры
Пример, для чего приводить строку к одному регистру:
str1= “Mark“
str2 = “mark“
print(str1 == str2) #результат будет «false», потому что разные регистры — это разные строки
print(str1.upper() == str2.upper()) #результат будет «true», потому что строки будут в одном регистре
Вот как выглядит зависимость при сравнении строк в Python, в которых содержатся цифры и разные регистры:
str1 = “2b“
str2 = “bb“
str3 = “Bb“
print(str1 > str2) #результат будет «false», потому что в первой строке первый символ — это цифра, которая по умолчанию «меньше», чем символ
print(str 2 > str3) #результат будет «true», потому что третья строка начинается с верхнего регистра, а верхний регистр по умолчанию «меньше», чем нижний
Заключение
Сравнение строк в Python несложно реализовать, если понимать тонкости и особенности этого самого сравнения, которые мы сегодня обсудили.
Другое