Операторы — это конструкции, которые могут манипулировать значением операндов. Рассмотрим выражение 4 + 5 = 9. Здесь 4 и 5 называются операндами, а + называется оператором.
Типы Оператора
Язык Python поддерживает следующие типы операторов —
- Арифметические Операторы
- Операторы сравнения (реляционные)
- Операторы присваивания
- Логические Операторы
- Битовые операторы
- Членство операторов
- Идентификационные операторы
Давайте посмотрим на всех операторов по одному.
Арифметические операторы Python
Предположим, что переменная a содержит значение 10, а переменная b содержит значение 21, тогда —
оператор | Описание | пример |
---|---|---|
+ Дополнение | Добавляет значения по обе стороны от оператора. | а + б = 31 |
— вычитание | Вычитает правый операнд из левого операнда. | а — б = -11 |
* Умножение | Умножает значения по обе стороны от оператора | а * б = 210 |
/ Отдел | Делит левый операнд на правый операнд | б / а = 2,1 |
% Модуль | Делит левый операнд на правый и возвращает остаток | б% а = 1 |
** Экспонент | Выполняет экспоненциальный (силовой) расчет по операторам | а ** б = 10 к степени 20 |
// | Полное деление — деление операндов, где результатом является частное, в котором удаляются цифры после десятичной точки. Но если один из операндов отрицателен, результат получается беспорядочным, то есть округляется от нуля (в сторону отрицательной бесконечности): | 9 // 2 = 4 и 9.0 // 2.0 = 4.0, -11 // 3 = -4, -11.0 // 3 = -4.0 |
Операторы сравнения Python
Эти операторы сравнивают значения по обе стороны от них и определяют соотношение между ними. Их также называют реляционными операторами.
Предположим, что переменная a содержит значение 10, а переменная b содержит значение 20, тогда —
оператор | Описание | пример |
---|---|---|
== | Если значения двух операндов равны, то условие становится истинным. | (a == b) не соответствует действительности. |
знак равно | Если значения двух операндов не равны, то условие становится истинным. | (a! = b) верно. |
> | Если значение левого операнда больше, чем значение правого операнда, условие становится истинным. | (а> б) не соответствует действительности. |
< | Если значение левого операнда меньше значения правого операнда, условие становится истинным. | (а <б) верно. |
> = | Если значение левого операнда больше или равно значению правого операнда, условие становится истинным. | (a> = b) не соответствует действительности. |
<= | Если значение левого операнда меньше или равно значению правого операнда, условие становится истинным. | (a <= b) верно. |
Операторы присваивания Python
Предположим, что переменная a содержит значение 10, а переменная b содержит значение 20, тогда —
оператор | Описание | пример |
---|---|---|
знак равно | Назначает значения от правых операндов к левому операнду | c = a + b присваивает значение a + b в c |
+ = Добавить И | Добавляет правый операнд к левому операнду и присваивает результат левому операнду | с + = а эквивалентно с = с + а |
— = вычесть И | Вычитает правый операнд из левого операнда и присваивает результат левому операнду | с — = а эквивалентно с = с — а |
* = Умножить И | Он умножает правый операнд на левый операнд и присваивает результат левому операнду | с * = а эквивалентно с = с * а |
/ = Разделить И | Он делит левый операнд с правым операндом и присваивает результат левому операнду | c / = a эквивалентно c = c / ac / = a эквивалентно c = c / a |
% = Модуль И | Он принимает модуль с использованием двух операндов и присваивает результат левому операнду | с% = а эквивалентно с = с% а |
** = экспонента И | Выполняет экспоненциальный (силовой) расчет операторов и присваивает значение левому операнду | с ** = а эквивалентно с = с ** а |
// = этаж | Выполняет деление по полу на операторы и присваивает значение левому операнду | c // = a эквивалентно c = c // a |
Битовые операторы Python
Побитовый оператор работает с битами и выполняет побитовую операцию. Предположим, если а = 60; и б = 13; Теперь в двоичном формате они будут выглядеть следующим образом —
а = 0011 1100
b = 0000 1101
——————
A & B = 0000 1100
a | b = 0011 1101
a ^ b = 0011 0001
~ a = 1100 0011
Встроенная функция Python bin () может использоваться для получения двоичного представления целого числа.
Следующие побитовые операторы поддерживаются языком Python —
оператор | Описание | пример |
---|---|---|
& Бинарный И | Оператор копирует немного, чтобы результат, если он существует в обоих операндах | (А и В) (означает 0000 1100) |
| Бинарный ИЛИ | Он копирует немного, если он существует в любом из операндов. | (a | b) = 61 (означает 0011 1101) |
^ Двоичный XOR | Он копирует бит, если он установлен в одном операнде, но не в обоих. | (a ^ b) = 49 (означает 0011 0001) |
Бинарные дополнения | Он одинарный и имеет эффект «переворачивания» битов. | (~ a) = -61 (означает 1100 0011 в форме дополнения 2 из-за двоичного числа со знаком). |
<< Бинарный сдвиг влево | Значение левого операнда перемещается влево на количество битов, указанное правым операндом. | << 2 = 240 (означает 1111 0000) |
>> Двоичное правое смещение | Значение левого операнда перемещается вправо на количество битов, указанное правым операндом. | a >> 2 = 15 (означает 0000 1111) |
Python логические операторы
Следующие логические операторы поддерживаются языком Python. Предположим, что переменная a содержит значение True, а переменная b содержит значение False, тогда —
оператор | Описание | пример |
---|---|---|
и логическое И | Если оба операнда имеют значение true, условие становится истинным. | (а и б) является ложным. |
или логическое ИЛИ | Если любой из двух операндов отличен от нуля, условие становится истинным. | (а или б) верно. |
не логично НЕ | Используется для изменения логического состояния своего операнда. | Не (а и б) верно. |
Операторы членства в Python
Операторы членства в Python проверяют членство в последовательности, такой как строки, списки или кортежи. Есть два оператора членства, как объяснено ниже —
оператор | Описание | пример |
---|---|---|
в | Значение true, если он находит переменную в указанной последовательности, и false в противном случае. | x в y, здесь приводит к 1, если x является членом последовательности y. |
не в | Возвращает значение true, если не находит переменную в указанной последовательности, и false в противном случае. | x не в y, здесь не в результате в 1, если x не является членом последовательности y. |
Python Identity Operators
Операторы идентификации сравнивают места в памяти двух объектов. Есть два оператора идентификации, как описано ниже:
оператор | Описание | пример |
---|---|---|
является | Значение true, если переменные по обе стороны от оператора указывают на один и тот же объект, и false в противном случае. | x — это y, здесь результат равен 1, если id (x) равен id (y). |
не является | Оценивается как ложное, если переменные по обе стороны от оператора указывают на один и тот же объект и истинное в противном случае. | x — это не y, здесь это не приводит к 1, если id (x) не равен id (y). |
Приоритет операторов Python
В следующей таблице перечислены все операторы от наивысшего приоритета к низшему.
**
Возведение в степень (возведение к власти)
~ + —
Дополнение, унарный плюс и минус (имена методов для двух последних: + @ и — @)
* /% //
Умножение, деление, деление по модулю и полу
+ —
Сложение и вычитание
>> <<
Сдвиг вправо и влево
&
Побитовое И
^ |
Побитовое исключающее `ИЛИ ‘и регулярное` ИЛИ’
<= <>> =
Операторы сравнения
<> ==! =
Операторы равенства
=% = / = // = — = + = * = ** =
Операторы присваивания
это не
Идентификационные операторы
в не в
Членство операторов
нет или и
Логические операторы