Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Industrial programming >> Python

Операторы в Python: Арифметические, сравнения, логические и битовые

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

Операторы — конструкции для манипуляции значениями операндов. В выражении 4 + 5 = 9 числа 4 и 5 — операнды, + — оператор.

Python поддерживает:

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

Пусть a = 10, b = 20:

ОператорОписаниеПример
+Сложениеa + b = 30
-Вычитаниеa – b = -10
*Умножениеa * b = 200
/Делениеb / a = 2
%Остаток от деленияb % a = 0
**Возведение в степеньa**b = 10²⁰
//Целочисленное деление (floor division) — дробная часть отбрасывается. Если операнд отрицательный, результат округляется к минус бесконечности9//2 = 4, 9.0//2.0 = 4.0, -11//3 = -4, -11.0//3 = -4.0

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

Сравнивают значения по обе стороны, возвращают True/False. a = 10, b = 20:

ОператорОписаниеПример
==Равно — true, если значения равны(a == b) is not true
!=Не равно — true, если значения не равны(a != b) is true
<>Не равно (устаревший аналог !=)(a <> b) is true
>Больше — true, если левый операнд больше правого(a > b) is not true
<Меньше — true, если левый операнд меньше правого(a < b) is true
>=Больше или равно(a >= b) is not true
<=Меньше или равно(a <= b) is true

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

a = 10, b = 20:

ОператорОписаниеПример
=Присваивание значения правого операнда левомуc = a + b
+=Сложение с присваиваниемc += a ⇔ c = c + a
-=Вычитание с присваиваниемc -= a ⇔ c = c - a
*=Умножение с присваиваниемc *= a ⇔ c = c * a
/=Деление с присваиваниемc /= a ⇔ c = c / a
%=Остаток с присваиваниемc %= a ⇔ c = c % a
**=Степень с присваиваниемc **= a ⇔ c = c ** a
//=Целочисленное деление с присваиваниемc //= a ⇔ c = c // a

Битовые операторы

Работают с битами. Пусть a = 60 (0011 1100), b = 13 (0000 1101):

a = 0011 1100
b = 0000 1101
-----------------
a&b = 0000 1100
a|b = 0011 1101
a^b = 0011 0001
~a  = 1100 0011
ОператорОписаниеПример
&Битовое И — бит в результате, если он есть в обоих операндах(a & b) = 12 (0000 1100)
|Битовое ИЛИ — бит, если есть хотя бы в одном(a | b) = 61 (0011 1101)
^Битовое исключающее ИЛИ — бит, если установлен только в одном(a ^ b) = 49 (0011 0001)
~Битовое дополнение (унарный) — инвертирует биты(~a) = -61 (1100 0011 в доп. коде)
<<Левый сдвиг — биты левого операнда сдвигаются влево на число бит правогоa << 2 = 240 (1111 0000)
>>Правый сдвиг — биты сдвигаются вправоa >> 2 = 15 (0000 1111)

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

a = 10, b = 20 (оба истинны как ненулевые):

ОператорОписаниеПример
andИстина, если оба операнда истинны(a and b) is true
orИстина, если хотя бы один операнд ненулевой(a or b) is true
notИнверсия логического состоянияnot(a and b) is false

Операторы принадлежности (Membership)

Проверяют наличие значения в последовательности (строка, список, кортеж):

ОператорОписаниеПример
inTrue, если переменная найдена в последовательностиx in y → 1, если x в y
not inTrue, если переменная НЕ найденаx not in y → 1, если x не в y

Операторы тождества (Identity)

Сравнивают адреса объектов в памяти:

ОператорОписаниеПример
isTrue, если переменные указывают на один объектx is y → 1, если id(x) == id(y)
is notFalse, если указывают на один объект, иначе Truex is not y → 1, если id(x) != id(y)

Приоритет операторов

От высшего к низшему:

№Оператор и описание
1** — возведение в степень
2~ + - — дополнение, унарный плюс/минус
3* / % // — умножение, деление, модуль, целочисленное деление
4+ - — сложение, вычитание
5>> << — битовые сдвиги
6& — битовое И
7^ | — битовое исключающее ИЛИ и обычное ИЛИ
8<= < > >= — операторы сравнения
9<> == != — операторы равенства
10= %= /= //= -= += *= **= — операторы присваивания
11is is not — операторы тождества
12in not in — операторы принадлежности
13not or and — логические операторы

Python

  1. Освоение типов данных в Python: практическое руководство
  2. Мастерство операторов Python: Полное руководство
  3. Оператор pass в Python: практическое руководство
  4. Аргументы функций в Python: позиционные, именованные и параметры по умолчанию
  5. Словари в Python: создание, манипуляции и продвинутые техники
  6. Итераторы в Python: как они работают и как создать свои
  7. Замыкания в Python: как вложенные функции захватывают переменные
  8. Модуль datetime в Python: практическое руководство по датам, времени и часовым поясам
  9. Основные операторы Java: полное руководство
  10. Обзор Python: высокоуровневый, читаемый, интерактивный и объектно-ориентированный язык