Зарегистрируйтесь, чтобы продолжить обучение

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

В математике и программировании мы часто используем знаки операций, такие как +, -, * и другие. В программировании такие знаки называются операторами.

  • Оператор — это символ или слово, которое обозначает действие.
  • Операнды — это значения, к которым применяется оператор.

Пример:

print(8 + 2)

Здесь:

  • + — это оператор
  • 8 и 2 — это операнды
  • результат — 10

Унарные операторы

Существуют и унарные операции — они работают с одним операндом. Пример:

print(-3)  # => -3

В этом случае - — унарный оператор, а 3 — операнд. Интерпретатор получает команду: «возьми число 3 и измени его знак».

Оператор - может использоваться по-разному. Когда он стоит между двумя числами, это операция вычитания:

print(5 - 2)   # => 3
print(10 - 7)  # => 3

Здесь - берёт первое число и вычитает из него второе.

Эта разница особенно заметна при работе с отрицательными числами. Например:

# минус на минус дает плюс
print(5 - -2) # => 7

Сначала мы видим операцию вычитания: 5 - (...). Но справа стоит унарный минус -2, который превращает 2 в отрицательное число. В итоге получается: 5 - (-2) = 7.

Таким образом, - может означать либо вычитание, либо смену знака числа — всё зависит от того, стоит ли рядом ещё одно число.

Главное, что здесь нужно помнить, поведение и даже сама запись здесь полностью соответствует тому, как мы делали это в школе.

Ошибки при вычислениях и парсинге

Если воспринимать -3 как единое число, можно не заметить, что - — это отдельный оператор со своим приоритетом. Например:

print(-3**2)

На первый взгляд может показаться, что в квадрат возводится -3, и результат должен быть 9 (любое число в квадрате становится положительным). Но результат будет -9.

Дело в порядке вычислений: сначала выполняется возведение в степень (**), а только потом применяется унарный минус. То есть программа считает так: -(3**2) = -9.

Открыть доступ

Курсы программирования для новичков и опытных разработчиков. Начните обучение бесплатно

  • 130 курсов, 2000+ часов теории
  • 1000 практических заданий в браузере
  • 360 000 студентов
Отправляя форму, вы принимаете «Соглашение об обработке персональных данных» и условия «Оферты», а также соглашаетесь с «Условиями использования»

Наши выпускники работают в компаниях:

Логотип компании Альфа Банк
Логотип компании Aviasales
Логотип компании Yandex
Логотип компании Tinkoff