English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Основной курс Python

Контроль потоков Python

Функции в Python

Типы данных в Python

Файловые операции Python

Объекты и классы Python

Даты и время Python

Продвинутые знания Python

Руководство Python

Операторы в Python

В этой статье вы узнаете о различных типах операторов в Python, их синтаксисе и том, как их использовать в примерах.

Что такое операторы в Python?

Операторы - это особые символы в Python, выполняющие арифметические или логические вычисления. Значения, на которые действуют операторы, называются operand.

Например:

>>> 2+3
5

Здесь, + является оператором выполнения сложения. 2 и 3 являются operand, 5 является результатом операции.

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

Арифметические операторы используются для выполнения математических операций, таких как сложение, вычитание, умножение и т.д.

ОператорЗначениеПример
+Добавление - сложение двух operand или унарного plusx + y + 2
-Сбавление - вычитание правого operand из левого operand или унарного минусаx-y- 2
*Умножение - умножение двух operandx * y
/Деление - деление левого operand на правый operand (результат всегда float)x / y
%Модуль - оставшаяся часть после деления левой operand на правую operandx % y (остаток от деления x / y)
//Целочисленное деление - возвращает целую часть деления (в了下нюю сторону)x // y
**Мощность - возвращает x в y-й степениx ** y (в幂 раз x)

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

x = 15
y = 4
# Выход: x + y = 19
print('x + y =', x+y)
# Выход: x - y = 11
print('x - y =', x-y)
# Выход: x * y = 60
print('x * y =', x*y)
# Выход: x / y = 3.75
print('x / y =', x/y)
# Выход: x // y = 3
print('x // y =',x//y)
# 输出: x ** y = 50625
print('x // y =', x//y)

# Вывод: x ** y = 50625

print('x ** y =', x**y)
При выполнении этой программы выводится:
x + y = 19
x - y = 11
x * y = 60
x / y = 3.75

x // y = 3

x ** y = 50625

ОператорЗначениеПример
Сравнительные операторыСравнительные операторы используются для сравнения значений. Они возвращают True или False в зависимости от условия.>
больше - если левый операнд больше правого операнда, то True<Меньше - если левый операнд меньше правого операнда, то True
x < y==Равно - если два операнда равны, то True
x == y!=Не равно - если операнды не равны, то True
x != y>=больше или равно - если левый операнд больше или равен правому, то True
<=Меньше или равно - если левый операнд меньше или равен правому, то Truex <= y

Пример 2: Сравнительные операторы в Python

x = 10
y = 12
# Вывод: x > y является False
print('x > y является', x>y)
# Вывод: x < y является True
print('x < y является', x<y)
# Вывод: x == y является False
print('x == y является', x==y)
# Вывод: x != y является True
print('x != y является', x!=y)
# Вывод: x >= y является False
print('x >= y является', x>=y)
# Вывод: x <= y является True
print('x <= y является', x<=y)

Результат вывода

x > y является False
x < y является True
x == y является False
x != y является True
x >= y является False
x <= y является True

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

Логические операторы are and, or, not операторы.

ОператорЗначениеПример
andЕсли оба операнда истинны,则为 Truex и y
orЕсли любой операнд истинен,则为 Truex или y
notЕсли операнд false,则为 True (дополнительная информация об операнде)не x

Пример 3: Логические операторы в Python

x = True
y = False
print('x и y являются', x и y)
print('x or y — ', x or y)
print('not x — ', not x)

Результат вывода

x and y — False
x or y — True
not x — False

Это таблица истинности для этих операторов:Таблица истинности.

Битовое вычисление

Битовое вычисление действует на операнды, как будто они строка двоичных чисел. Они работают по одному, поэтому они получили это имя.

Например, 2 — это 10 в двоичном виде, 7 — это 111.

в таблице ниже:позволяетx= 10 (0000 1010 в двоичном виде) иy= 4 (0000 0100 в двоичном виде)

ОператорЗначениеПример
&Битовое Иx & y = 0 (0000 0000)
|Битовое ИЛИx | y = 14 (0000 1110)
~Битовое не~x = -11 (1111 0101)
^Битовое исключающее ИЛИx ^ y = 14 (0000 1110)
>>Битовое правое смещениеx >> 2 = 2 (0000 0010)
<<Битовое левое смещениеx << 2 = 40 (0010 1000)

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

В Python используется оператор присваивания для присвоения значений переменным.

a = 5 — это простой оператор присваивания, которыйassigns значение справа (5) переменной слеваa.

В Python есть много подобных сложных операторов, такие как a += 5, которые добавляются к переменной, а затем им присваивается значение. Эквивалент a = a + 5.

ОператорПримерЭквивалент
=x = 5x = 5
+=x += 5x = x + 5
-=x -= 5x = x - 5
*=x *= 5x = x * 5
/=x /= 5x = x / 5
%=x %= 5x = x % 5
//=x //= 5x = x // 5
**=x **= 5x = x ** 5
&=x &= 5x = x & 5
|=x |= 5x = x | 5
^=x ^= 5x = x ^ 5
>>=x >>= 5x = x >> 5
<<=x <<= 5x = x << 5

Специальные операторы

Язык Python предоставляет некоторые специальные типы операторов, такие как операторы идентичности или операторы членства. Ниже с помощью примеров рассмотрим их.

Операторы идентичности

is и is not — это операторы идентичности в Python. Они используются для проверки того, находятся ли два значения (или переменные) в одной и той же части памяти. Два равных переменные не означают, что они одни и те же.

ОператорЗначениеПример
isЕсли операнды одинаковые, то истина (ссылаются на один и тот же объект)x истинно
is notЕсли операнды不相同, то истина (не ссылаются на один и тот же объект)x не истинно

Пример 4: Оператор идентичности в Python

x1 = 5
y1 = 5
x2 = 'Hello'
y2 = 'Hello'
x3 = [1, 2, 3]
y3 = [1, 2, 3]
# Вывод: False
print(x1 is not y1)
# Вывод: True
print(x2 is y2)
# Вывод: False
print(x3 is y3)

Результат вывода

False
True
False

Здесь мы видимx1иy1являются целыми числами с одинаковыми значениями, поэтому они как равны, так и идентичны.x2иy2ситуация такая же с строками.

Ноx3иy3являются списками. Они равны, но различаются. Потому что, хотя они равны, интерпретатор все же их различает, размещая их в памяти.

операторы членства

in и not in являются операторами членства в Python. Они используются для проверки наличия в последовательности (строка,список,тупль,множествоисловарьНайден ли ключ или переменная в

В словарях мы можем проверять только наличие ключей, а не значений.

ОператорЗначениеПример
inЕсли значение/вариант найден в последовательности, то истина5 in x
not inЕсли значение/вариант не найден в последовательности, то истина5 not in x

Пример #5: Оператор членства в Python

x = 'Hello world'
y = {1: 'a', 2: 'b'}
# Вывод: True
print('H' in x)
# Вывод: True
print('hello' not in x)
# Вывод: True
print(1 in y)
# Вывод: False
print('a' in y)

Результат вывода

True
True
True
False

Здесь, 'H'存在于 x, но 'hello' не существует в x (не забывайте, что Python чувствителен к регистру). Аналогично, 1 является ключом, а a является значением словаря y, поэтому a в y возвращает False.