Типы операторов Арифметические операторы Оператором является элемент выражения, который указывает на то, какое действие необходимо произвести между элементами. То есть, в выражении "21 - 4" символ "-" является оператором, указывающим на то, что нужно произвести вычитание. "21" и "4" при этом называются операндами.
Символ
| Описание
| Пример
| +
| Оператор суммы
| >>> print(5 + 8)
13
| -
| Оператор вычитания
| >>> print(31 - 2)
29
| *
| Оператор произведения
| >>> print(12 * 9)
108
| /
| Оператор деления
| >>> print(6 / 4)
1.5
| %
| Оператор получения остатка от деления
| >>> print(6 % 4)
2
| **
| Оператор возведения в степень
| >>> print(9 ** 2)
81
| //
| Оператор целочисленного деления
| >>> print(6 // 4)
1
| Операторы сравнения (реляционные) Символ
| Описание
| Пример
| ==
| Проверяет равны ли операнды между собой. Если они равны, то выражение становится истинным.
| >>> print(5 == 5)
True >>> print(6 == 44)
False
| !=
| Проверяет равны ли операнды между собой. Если они не равны, то выражение становится истинным.
| >>> print(12 != 12)
False >>> print(1231 != 0.4)
True
| >
| Проверяет больше ли левый операнд чем правый, если больше, то выражение становится истинным.
| >>> print(53 > 23)
True >>> print(432 >500)
False
| <
| Проверяет меньше ли левый операнд чем правый, если меньше, то выражение становится истинным.
| >>> print(5 < 51)
True >>> print(6 < 4)
False
| <>
| Проверяет равны ли операнды между собой. Если они не равны, то выражение становится истинным.
| >>> print(132 <> 11)
True >>> print(44 <> 44)
False
| >=
| Проверяет больше или равен левый операнд, чем правый, Если больше, то выражение становится истинным.
| >>> print(5 >= 5)
True >>> print(6 >=44)
False
| <=
| Проверяет меньше или равен левый операнд, чем правый, Если меньше, то выражение становится истинным.
| >>> print(32 <= 232)
True >>> print(65 <= 9)
False
| Операторы присваивания Символ
| Описание
| Пример
| =
| Присваивает значение правого операнда левому
| >>> var = 5
>>> print(var)
5
| +=
| Прибавляет значение правого операнда к левому и присваивает левому. a += b эквивалентно записи a=a+b
| >>> var = 5
>>> var += 4
>>> print(var)
9
| -=
| Отнимает значение у левого операнда правое и присваивает левому. a -= b эквивалентно записи a = a -b
| >>> var = 5
>>> var -= 2
>>> print(var)
3
| *=
| Умножает значение левого операнда на правое и присваивает левому. a *= b эквивалентно записи a=a*b
| >>> var = 5
>>> var *= 10
>>> print(var)
50
| /=
| Делит значение левого операнда на правое и присваивает левому. a /= b эквивалентно записи a=a/b
| >>> var = 5
>>> var /= 4
>>> print(var)
1.25
| %=
| Делит значение левого операнда по остатку на правое и присваивает левому. a %= b эквивалентно записи a = a % b
| >>> var = 5
>>> var %= 10
>>>print(var)
5
| **=
| Возводит значение левого операнда в степень правого и присваивает левому. a **= b эквивалентно записи a = a ** b
| >>> var = 5
>>> var **= 8
>>>print(var)
390625
| //=
| Целочисленно делит значение левого операнда на правое и присваивает левому. a //= b эквивалентно записи a = a // b
| >>> var = 5
>>> var //= 30
>>>print(var)
0
| Побитовые операторы Данные операторы работают с данными в двоичной системе счисления. Например, число 13 в двоичной системе будет равно 1101
Символ
| Описание
| Пример (в двоичной системе)
| &
| Бинарный "И" оператор, копирует бит в результат только если бит присутствует в обоих операндах
| 0&0=0
1&0=0
0&1=0
1&1=1
101 & 011 = 001
| |
| Бинарный "ИЛИ" оператор копирует бит, если тот присутствует в хотя бы в одном операнде
| 0|0=0
1|0=1
0|1=1
1|1=1
101 | 011 = 111
| ^
| Бинарный "Исключительное ИЛИ" оператор копирует бит только если бит присутствует в одном из операндов, но не в обоих сразу
| 0^0=0
1^0=1
0^1=1
1^1=0 101 ^ 011 = 110
|
| Побитовая операция "НЕ". Для числа a соответствует -(a+1)
| 1 = -2 0 = -1
101 = -110
| >>
| Побитовый сдвиг вправо. Значение левого операнда "сдвигается" вправо на количество бит указанных в правом операнде
| 100 >> 2 = 001
| <<
| Побитовый сдвиг влево. Значение левого операнда "сдвигается" влево на количество бит указанных в правом операнде
| 100 << 2 = 10000
| Логические операторы Символ
| Описание
| Пример
| and
| Логический оператор "И". Условие будет истинным если оба операнда истина
| True and True = True.
True and False = False.
False and True = False.
False and False = False.
| or
| Логический оператор "ИЛИ". Если хотя бы один из операндов истинный, то и все выражение будет истинным
| True or True = True.
True or False = True.
False or True = True.
False or False = False.
| not
| Логический оператор "НЕ". Изменяет логическое значение операнда на противоположное
| not True = False.
not False = True.
| Операторы членства Данные операторы участвуют в поиске данных в некоторой последовательности.
Символ
| Описание
| Пример
| in
| Возвращает истину, если элемент присутствует в последовательности, иначе возвращает ложь
| >>> print('he' in 'hello')
True
>>> print(5 in [1, 2, 3, 4, 5])
True
>>> print(12 in [1, 2, 4, 56])
False
| not in
| Возвращает истину если элемента нет в последовательности
| результаты противоположны примерам выше
| Операторы тождественности Данные операторы помогают сравнить размещение двух объектов в памяти компьютера
Символ
| Описание
| Пример
| is
| Возвращает истину, если оба операнда указывают на один объект
| >>> a = 12
>>>b = 12
>>> a is b
True
>>> c = 22
>>> a is c
False
| is not
| Возвращает ложь, если оба операнда указывают на один объект
| результаты противоположны примерам выше
| Условные операторы Особый вид операторов, про который мы расскажем в разделе "Условные операторы".
Приоритет операторов Если в выражении используются несколько операторов, то необходимо знать в каком порядке будет выполняться выражение. Например, арифметическое выражение 2 + 2 * 2, как известно из курса математики, будет выполняться начиная с умножения. Тем самым умножение имеет более высокий приоритет, чем сложение. Ниже будет приведена таблица, в которой приведенные в этой главе операторы будут расположены от наиболее низкого приоритета, к более высокому. Стоит отметить, что, когда вы будете использовать сложные выражения с несколькими операторами, лучше использовать скобки. Такой подход поможет указать приоритет выполнения операций в явном виде.
Нажмите на изображение, чтобы увеличить
Как видно из таблицы, некоторые операторы размещены в одной общей ячейке. Это значит, что их приоритет находится на одном уровне. Также стоит добавить, что операторы присваивания обладают наименьшим приоритетом.
|