Учебники

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

Операторы — это конструкции, которые могут манипулировать значением операндов.

Рассмотрим выражение 4 + 5 = 9. Здесь 4 и 5 называются операндами, а + — операторами.

Типы Оператора

Язык Python поддерживает следующие типы операторов.

  • Арифметические Операторы
  • Операторы сравнения (реляционные)
  • Операторы присваивания
  • Логические Операторы
  • Битовые операторы
  • Членство операторов
  • Идентификационные операторы

Давайте посмотрим на всех операторов по одному.

Арифметические операторы Python

Предположим, что переменная a содержит 10, а переменная b содержит 20, тогда —

[ Показать пример ]

оператор Описание пример
+ Дополнение Добавляет значения по обе стороны от оператора. а + б = 30
— вычитание Вычитает правый операнд из левого операнда. а — б = -10
* Умножение Умножает значения по обе стороны от оператора а * б = 200
/ Отдел Делит левый операнд на правый операнд б / а = 2
% Модуль Делит левый операнд на правый и возвращает остаток б% а = 0
** Экспонент Выполняет экспоненциальный (силовой) расчет по операторам а ** б = 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

[ Показать пример ]

оператор Описание пример
& Бинарный И Оператор копирует немного в результат, если он существует в обоих операндах (А и В) (означает 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 содержит 10, а переменная b содержит 20, тогда

[ Показать пример ]

оператор Описание пример
и логическое И Если оба операнда имеют значение 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

В следующей таблице перечислены все операторы от наивысшего приоритета к низшему.

[ Показать пример ]

**

Возведение в степень (возведение к власти)

~ + —

Дополнение, унарный плюс и минус (имена методов для двух последних: + @ и — @)

* /% //

Умножение, деление, деление по модулю и полу

+ —

Сложение и вычитание

>> <<

Сдвиг вправо и влево

&

Побитовое И

^ |

Побитовое исключающее `ИЛИ ‘и регулярное` ИЛИ’

<= <>> =

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

<> ==! =

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

=% = / = // = — = + = * = ** =

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

это не

Идентификационные операторы

в не в

Членство операторов

нет или и

Логические операторы