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

Что можно делать с числами, кроме математических операций сложения, умножения, вычитания и т.д.? Числа можно сравнивать! Сравнение — это очень понятная операция, ну очевидно же, что-то одно больше или меньше чего-то другого. А что является результатом операции сравнения? Ведь в отличие, скажем, от того же сложения, где результатом является сумма, у сравнения нет нового значения. На самом деле результатом применения оператора сравнения к двум числам является значение Истина или Ложь. Давайте посмотрим это на примере оператора "Больше" >. Это самый простой и понятный оператор, это что-то одно больше чего-то другого. А поскольку все в Python объект, то один объект больше другого. Логично предположить, что сравнивать можно только одинаковые по типу объекты. Сравнивать "мух" с "котлетами" — нельзя! А вот сравнивать длину строки "муха" с длиной строки "котлета" — можно! Но давайте к чему-то более понятному — к числам. Давайте сравним 5 и 3. Применим оператор > к паре чисел. И что мы получим, когда нажмем Enter?

>>> 5 > 3

А получим мы ответ в виде True, ту самую Истину. Т.е. Python, используя формальную математическую логику, вычислил результат операции сравнения 5 "Больше" 3, и определил его как Истина. Ну а если к той же конструкции мы применим оператор "Больше", но теперь поменяем местами наши цифры <

Результат будет следующим:

>>> 3 > 5
False

False переводится на русский как Ложь. По сути это и есть два состояния, которые мы получаем, применяя любой оператор сравнения к любым сравнимым объектам. Ложь или Истина. True или False.

Кстати! Переменные, к которым применяются операции сравнения называются операндами.

Логично предположить, что если есть оператор сравнения "Больше", то есть и оператор сравнения "Меньше". И он действительно есть, а кроме того есть еще ряд операторов сравнения:

< Меньше — условие верно, если первый операнд меньше второго.\ > Больше — условие верно, если первый операнд больше второго.\ <= Меньше или равно.\ >= Больше или равно.\ == Равенство. Условие верно, если два операнда равны.\ != Неравенство. Условие верно, если два операнда неравны.

Например, условие (x * x < 1000) означает “значение x * x меньше 1000”, а условие (2 * x != y) означает “удвоенное значение переменной x не равно значению переменной y”.

Для того чтобы определить, в каком порядке применять соответствующие операторы, например, в случае 2 * 2 + 2, существует таблица приоритета применения операторов, она очень похожа на привычные нам со школы правила приоритета математических операций. К примеру, круглые скобки имеют самый большой приоритет, и все, что в них, выполняется в первую очередь, потом идут операции возведения в степень, применения знака, умножения, затем сложения и вычитания, и в конце, с самым низшим приоритетом, выполняются операции сравнения. Для практического применения важно помнить, что скобки имеют высший приоритет, и если вы сомневаетесь в том, в каком порядке будут выполняться операции, — просто расставьте скобки. Например, так 2 * (2 + 2), тогда операция сложения выполнится первой, а умножение будет уже применяться к результату сложения, и финальный результат будет 8, а если бы скобки не стояли, то результат, конечно же, был бы 6.

Операторы сравнения в Питоне можно объединять в цепочки (в отличие от большинства других языков программирования, где для этого нужно использовать логические связки), например, 1 == 2 == 3 или 1 <= x <= 10.

results matching ""

    No results matching ""