Операторы – это специальные знаки, которые являются командой для интерпретатора Python по выполнению определенных задач. Они бывают абсолютно разными: арифметическими, операторами сравнения, тождественности, принадлежности и так далее. Все они имеют различные особенности, которые сегодня мы рассмотрим более подробно.
Арифметические операторы Python
Как можно догадаться из названия, арифметические операторы нужны для того, чтобы совершать несложные арифметические операции. К таковым относятся:
- Сложение. Для этого используется оператор +, который является таким же, как и известный математический знак, выполняющий эту функцию.
- Вычитание. Эта операция осуществляется с использованием знака «–».
- Умножение. В большинстве компьютерных программ данная арифметическая операция выполняется с использованием знака звездочки *. Python – не исключение.
- Деление. Для этого используется знак слэша /. Внимание! Он должен быть направлен именно в эту сторону.
- Остаток от деления. Выглядит так, как математический знак процента (%), но имеет другую функцию.
- Возведение в степень. Отличается от аналогичного знака в арифметике. Выглядит, как две звездочки, расположенные по горизонтали (**).
- Деление без остатка. Этот оператор получает исключительно целое число, округленное в меньшую сторону (так, чтобы оставался остаток). При этом он не возвращает остатка.
Теперь перейдем к описанию принципа работы этих операторов (равно, как и других). Сначала необходимо разобраться в значении слова «операнд». Это те фрагменты информации, над которыми осуществляется операция. В нашем случае – арифметическая.
Любые операнды размещаются по разные стороны оператора. В случае с математическими операторами, в большинстве случаев это будет стандартное арифметическое выражение типа a + b = c или n = a+3.
Но оператор деления по модулю, например, будет использоваться таким образом.
с = 10 % 3.
То есть, каждый из описанных выше знаков ставится между операндами. А получившееся выражение может присваиваться другой переменной или же использоваться в качестве аргумента функции.
Операторы присваивания Python
Присваивание значения переменной – одна из самых распространенных операций. С ее помощью можно передавать ей необходимую информацию, которая в дальнейшем может использоваться программой. Без нее невозможно представить программирования. А для большего удобства использования количество операторов присваивания в Python очень большое.
Рассмотрим наиболее распространенные из них.
Оператор =. Это классический оператор присваивания. Обратите внимание, он не проверяет равенство операндов, за это отвечает другой оператор. Он именно используется для присваивания значений или объектов переменным.
Тем не менее, в некоторых случаях он может читаться, как знак «равно», но только если речь не идет о сравнении операндов.
Пример.
x = 5.
Эта простая строчка кода присваивает переменной x значение 5. То есть, она может читаться, как «x равно 5». Но при этом осуществляется не констатация факта, а действие, после которого переменная x становится равной 5. А до этого действия она может как вовсе отсутствовать, так и содержать любое другое значение.
Это единственный оператор этой категории, который выполняет одно действие. Остальные же совершают сразу 2.
Оператор +=. Этот оператор сначала добавляет к переменной то число, которое находится во втором операнде, а потом делает так, чтобы эта переменная имела соответствующее значение.
x += 3
Это то же самое, что x = x + 3.
В целом, любой из операторов может быть заменен на аналогичное выражение, где переменная равно переменная, оператор, операнд 2. Дальше мы приведем еще несколько таких примеров для наглядности, и такая же логика будет действовать для всех операторов присваивания.
Оператор –=. Выполняет похожую операцию на ту, что делает предыдущий оператор, но при этом со знаком «минус». Он сначала берет переменную, которая стоит в первом операнде, отнимает от содержащегося в ней числе значение, расположенное в правом операнде, а потом результат присваивает этой же переменной, которая стоит в левом операнде.
На практике все значительно проще, чем может показаться, когда вы читали это правило. Оператор –= аналогичен выражению x = x-y. Просто оно более сокращенное.
Приведем пример.
x -= 3
Если вместо x подставить значение 2, то получится число -1, поскольку если от двух отнять 3, выйдет именно -1.
Оператор *=. Аналог предыдущих двух операторов присваивания, только выполняющий операцию умножения. Соответственно, принцип его работы аналогичный.
В целом, по такому же принципу работают все остальные операторы. Например, есть оператор деления, который также ставится перед знаком равно, а также деление по модулю, остаток от деления и так далее. Давайте приведем таблицу с описанием всех имеющихся операторов сравнения при их соединении с другими.
Операторы сравнения Python
Они используются, чтобы сопоставить операнды друг с другом и понять, они равны, или какое-то из них большее, или меньшее.
Рассмотрим существующие операторы сравнения.
Равно (==). Как и говорилось выше, этот оператор выглядит несколько иначе, чем оператор присваивания. Выглядит он, как два математических знака «равно», стоящих вместе. Он проверяет равенство двух операндов, и в случае соблюдения этого критерия возвращает значение «истина».
Не равно (!=). Также отличается от аналогичного арифметического знака в математике. Противоположный по значению оператор. Возвращает истину, если указанный выше критерий не соблюдается.
Больше, чем (>) и меньше, чем (<). Операторы, аналогичные таковым в математике.
Больше или равно (>=) и меньше или равно (<=). Аналоги соответствующих операторов в математике с несколько иным описанием.
Приведем сводную таблицу со значениями и примерами использования этих операторов.
Логические операторы Python
Предназначены для связывания объектов между собой. Используются для задания условия, при котором выполняются определенные действия или для указания критерия, при котором выполняется цикл или осуществляется выход из него. Всего существует три логических оператора в этом языке программирования
И (and). Объединяет условия между собой. Если оба критерия оказываются верными, оператор возвращает значение «истина». Если же нет, то «ложь».
ИЛИ (or). Проверяет истинность хотя бы одного из указанных операндов. Если из них есть один, который соответствует действительности, то возвращается значение «истина». Если же нет, то «ложь».
НЕ (not). Выполняет инверсию результата вывода логического оператора или функции. То есть, истина становится ложью и наоборот.
Приведем сводную таблицу с примерами использования этих операторов, а также их значениями.
Операторы тождественности Python
Если требуется сравнить несколько объектов между собой, используются операторы тождественности. При этом они отличаются по принципу действия от операторов сравнения с тем, поскольку критерием для тождественности является нахождение операндов в одной и той же части памяти.
Есть всего два оператора тождественности:
- Выполняет сравнение, операндов, и если они являются идентичными, то возвращается значение true. Соответственно, если этот критерий не соблюдается, возвращается значение false.
is not. Противоположный по принципу работы оператор. В случае тождественности операндов друг другу возвращает false.
Приведем наглядную таблицу с описанием использования операторов тождественности в Python.
Операторы принадлежности Python
Python также умеет раскладывать объекты на составляющие и проверять, является ли один объект составной частью другого. Типичный пример использования – строки. Например, с их помощью можно проверять, является ли одна подстрока составной частью другой подстроки. Соответственно, возвращается логический результат, предусмотренный подходящим оператором.
В Python есть два оператора принадлежности – in и not in. По синтаксису они напоминают все остальные. Сначала ставится операнд 1, после этого оператор, а потом – операнд 2. И выполняют они похожие действия. Просто если строка является составной частью большей строки (или меньший объект – составляющей большего), то оператор in возвращает значение True. Если же здесь бы использовался оператор not in, то возвращаемое значение было бы False.
Приведем небольшую таблицу с примерами использования этих операторов (вернее, шаблонами), а также – их значениями.
Побитовые операторы Python
Самая сложная для понимания категория операторов. Настолько сложная, что для этого нужно отдельно рассматривать принцип работы каждого из них. Ведь каждый работает по определенным формулам. Они поддаются логике, она будет указана в таблице ниже. Тем не менее, это все равно довольно сложно.
Начнем с того, что они работают с битами. То есть, с нулями и единицами, а не привычными значениями. Например, оператор & каждый бит делает единицей лишь при условии, что каждый бит операндов на соответствующих позициях равен единице.
Вот более подробная таблица с использованием этих операторов.
Мы разобрались с самыми часто используемыми операторами в Python, а также рядом других, сфера применения которых более ограниченная. Следует отметить, что операторы – это одна из самых простых тем в программировании. Они почти не отличаются от привычных нам математических знаков, просто список символов, которые используются, несколько больше. При этом принцип их работы доступен для понимания каждому новичку. Единственное исключение – побитовые операторы, которые заслуживают отдельного рассмотрения.