КакК сакрав сниватьрав строки в Pythonн Python

Введение

Вы можете сравнивать строки в Python с использованием операторов равенства (==) и сравнения (<, >, !=, <=, >=). Нет специальных методов для сравнения двух строк. В этой статье вы узнаете, как работают каждый из операторов при сравнении строк.

Сравнение строк в Python происходит путем посимвольного сравнения символов в обеих строках. Когда обнаруживаются разные символы, сравниваются значения их кодов Unicode. Считается, что символ с более низким значением Unicode является меньшим.

Операторы равенства и сравнения в Python

Объявите переменную строки:

fruit1 = 'Apple'

В следующей таблице показаны результаты сравнения идентичных строк (Apple и Apple) с использованием разных операторов.

Operator Code Output
Equality print(fruit1 == 'Apple') True
Not equal to print(fruit1 != 'Apple') False
Less than print(fruit1 < 'Apple') False
Greater than print(fruit1 > 'Apple') False
Less than or equal to print(fruit1 <= 'Apple') True
Greater than or equal to print(fruit1 >= 'Apple') True

Обе строки полностью идентичны. Другими словами, они равны. Оператор равенства и другие операторы равенства возвращают True.

Если вы сравниваете строки с разными значениями, то получаете точно противоположный результат.

Если вы сравниваете строки, содержащие одинаковую подстроку, например, Apple и ApplePie, то более длинная строка считается большей.

Сравнение ввода пользователя для оценки равенства с использованием операторов

Этот примерный код принимает и сравнивает ввод пользователя. Затем программа использует результаты сравнения для вывода дополнительной информации о алфавитном порядке введенных строк. В этом случае программа предполагает, что меньшая строка идет перед большей строкой.

fruit1 = input('Enter the name of the first fruit:\n')
fruit2 = input('Enter the name of the second fruit:\n')

if fruit1 < fruit2:
    print(fruit1 + " comes before " + fruit2 + " in the dictionary.")
elif fruit1 > fruit2:
    print(fruit1 + " comes after " + fruit2 + " in the dictionary.")
else:
    print(fruit1 + " and " + fruit2 + " are the same.")

Вот пример возможного вывода при вводе различных значений:

Output
Enter the name of first fruit: Apple Enter the name of second fruit: Banana Apple comes before Banana in the dictionary.

Вот пример возможного вывода при вводе идентичных строк:

Output
Enter the name of first fruit: Orange Enter the name of second fruit: Orange Orange and Orange are the same.

Примечание: Для того чтобы этот пример работал, пользователь должен вводить либо только прописные, либо только строчные буквы для первой буквы обеих вводимых строк. Например, если пользователь вводит строки apple и Banana, то вывод будет apple идет после Banana в словаре, что неверно.

Это несоответствие происходит потому, что кодовые значения точек Unicode заглавных букв всегда меньше кодовых значений строчных букв: значение a равно 97, а значение B равно 66. Вы можете проверить это сами, используя функцию ord() для вывода кодового значения символов.

Вывод

В этой статье вы узнали, как сравнивать строки в Python с использованием операторов равенства (==) и сравнения (<, >, !=, <=, >=). Продолжайте изучение строки в Python.

Source:
https://www.digitalocean.com/community/tutorials/python-string-comparison