Какие операторы используются в Python: руководство
Операторы языка Python — это те инструменты, которые используются для выполнения различных действий с переменными, а также числовыми и другими значениями, которые называются операндами, то есть объектами, над которыми выполняются операции. Операторы делятся на несколько типов, в зависимости от того, какие действия выполняют. Вот какие операторы используются в Python :
- арифметические,
- сравнения,
- присваивания,
- тождественности,
- принадлежности,
- логические,
- побитовые.
В этой статье-справочнике подробно рассмотрим каждый из них и приведем примеры.
Арифметические
Для сложения, вычитания, умножения и деления используются, соответственно, + , — , * и / .
>>> 24 + 28
52
>>> 24 - 28
-4
>>> 24 * 28
672
>>> 24 / 28
0.8571428571428571
Для возведения в степень — ** .
Для целочисленного деления без остатка — // .
>>> 61 // 12
5
>>> 52 // 22
2
>>> 75 // 3
25
>>> 77 // 3
25
% выдает остаток, то есть выполняет деление по модулю:
>>> 62 % 6
2
>>> 65 % 9
2
>>> 48 % 5
3
>>> 48 % 12
0
Сравнения
>>> 26 > 58
False
>>> 26 < 58
True
>>> 26 >= 26
True
>>> 58 False
>>> 50 == 50
True
>>> 50 != 50
False
>>> 50 != 51
True
Присваивания
Для присвоения значений переменным используется один знак «равно»:
Также предусмотрены удобные конструкции для совмещения всех арифметических действий с одновременным присваиванием полученного значения: += , -= , *= , /= , //= , %= . Например:
Мы задали переменную сars и присвоили ей значение 5 , затем добавили еще 7 с одновременным присвоением нового значения. Конечно, можно вместо cars += 7 написать и так:
Ошибки нет, но первый вариант более компактный. Посмотрим, как работают другие действия одновременно с присваиванием:
>>> train = 11
>>> train -= 2
>>> train
9
>>> moto = 3
>>> moto *= 7
>>> moto
21
>>> plain = 8
>>> plain /= 4
>>> plain
2.0
Обратите внимание, что в последнем случае мы получили не целое значение, int , а с запятой, float .
Тождественности
Таких операторов в Python 2 : is и is not . Как и в английском, первый означает (это) есть , а второй — это не . Ответами интерпретатора, как и в случае со сравнениями, будут True или False .
>>> 55 is 55
True
>>> 55 is 56
False
>>> 55 is not 55
False
>>> 55 is not 56
True
>>> 55 is '55'
False
>>> '55' is "55"
True
Разбираемся, что произошло в последних двух операциях. В первом случае ( 55 is ’55’ ) сравнивалось целое число и строка, поэтому интерпретатор выдал False , а во втором ( ’55’ is «55» ) оба операнда представляли собой строки, поэтому было выдано True . Заметьте, что Питону не важно, использует ли программа одинарные или двойные кавычки: оба варианта синтаксически допустимы, поэтому результат тождества оказался истинным.
Принадлежности
Этих операторов тоже только два: in и not in . Они проверяют, есть или нет определенное значение в какой-либо последовательности. Например:
>>> wordlist = ('assistant', 'streetcar', 'fraudster', 'dancer', 'heat', 'blank', 'compass', 'commerce', 'judgment', 'approach')
>>> 'house' in wordlist
False
>>> 'assistant' in wordlist
True
>>> 'assistant' and 'streetcar' in wordlist
True
В последнем случае мы задействовали логический оператор ( and ), к рассмотрению которых и переходим.
Логические
В Питоне есть три логических оператора: and (и), or (или), а также not (не). and работает следующим образом: True возвращается только в том случае, если все операнды истинны. При этом обрабатываться может сколько угодно значений. Используем пример из главы выше:
>>> wordlist = ('assistant', 'streetcar', 'fraudster', 'dancer', 'heat', 'blank', 'compass', 'commerce', 'judgment', 'approach')
>>> 'assistant' and 'streetcar' in wordlist
True
>>> 'fraudster' and 'dancer' and 'heat' and 'blank' in wordlist
True
>>> 'fraudster' and 'dancer' and 'heat' and 'blank' and 'house' in wordlist
False
Как видим, значения ‘house’ в строке не оказалось, поэтому интерпретатор выдал False . Те же операции можно производить и над целочисленными значениями:
>>> numbers = 54 > 55 and 22 > 21
>>> print(numbers)
False
Всё верно, потому что одно из выражений ложно, а and требует, чтобы истинными были все условия.
or действует по-другому: выражение признается истинным в том случае, если истинно хотя бы одно из его значений. Поэтому, если в предыдущем примере мы заменим операторы and на or , то получим следующий результат:
>>> numbers = 54 > 55 or 22 > 21
>>> print(numbers)
True
22 больше 21 и при этом для операции or не важно, что первое выражение ложно.
А вот как работает not :
>>> first = True
>>> second = False
>>> print(not first)
False
>>> print(not second)
True
Из примера видно, что not переворачивает логические значения, меняя True на False и наоборот.
Побитовые
Побитовые (или битовые) операторы используются в Python для изменения объектов на уровне битов. Их всего пять (сдвиговые принадлежат к одному типу, поскольку различаются только направлением сдвига):
Битовые операторы основаны на принципах Булевой логики, поэтому действуют следующим образом:
& (AND) возвращает 1, если 1 есть в обоих операндах, в остальных случаях 0:
| (OR) возвращает 1, если 1 есть в одном из операндов, иначе вернет 0:
^ (XOR) возвращает 1, если операнды различаются, и 0, если они одинаковы:
~ (NOT) переворачивает биты, преобразуя положительные значения в отрицательные со сдвигом на единицу следующим образом:
и >> сдвигают биты на определенное количество, которое указывается справа:
Для понимания сдвигов давайте разложим значения на биты, добавив, где нужно, разряд для удобства:
Поэтому, сдвигая в единице разряд влево, мы получаем 2, а если вправо, то 0. А если на два разряда?
Сдвинув единицу на два разряда влево, мы получили 4, потому что 4 в битовом представлении будет 100. Сдвиг вправо на любое число разрядов всё равно дает нам ноль, так как бит «обнуляется» в любом случае.
Больше информации о битовых операторах можно найти в нашей статье о них.
В завершение проясним один важный момент и разграничим похожие по способу действия языковые инструменты.
Чем отличаются операторы от функций
Вы наверняка заметили, что в этот обзор не попала ни одна функция. Путаница в определении этих инструментов возникает из-за того, что и те, и другие производят похожие действия, то есть так или иначе преобразуют объекты. Однако функции более глобальны, то есть могут выполнять операции со строками и целыми блоками кода, а операторы — только с отдельными значениями и переменными. Поэтому функция может состоять в Python из блока операторов , а вот операторы из функций — никогда.
6. Python – Основные операторы языка
Python – это универсальный язык, который можно использовать для создания всевозможных приложений. Мы рассмотрим основные операторы в Python. Вы должны хорошо понимать, как использовать основные операторы в Python.
Давайте разберёмся, что такое операторы. Операторы – это конструкции, которые могут управлять значением операндов.
Рассмотрим выражение «4 + 5 = 9». Здесь «4» и «5» называются операндами, а «+» называется оператором.
Типы операторов
В Python есть множество операторов, которые можно использовать для выполнения операций над переменными и значениями. Наиболее распространенными операторами являются арифметические операторы, которые используются для выполнения математических операций, таких как сложение, вычитание, умножение и деление. Существуют также операторы сравнения, которые используются для сравнения двух значений, и логические операторы, которые используются для объединения нескольких условий.
Язык Python поддерживает следующие типы операторов:
Давайте посмотрим все операторы Python один за другим.
Оглавление
- 1. Python – Самоучитель для начинающих
- 2. Python – Обзор
- 3. Python – Установка среды
- 4. Python – Базовый синтаксис
- 4.1. Python – Аргументы командной строки
- 5. Python – Типы переменных
- 6. Python – Основные операторы
- 6.1. Python – Арифметические операторы
- 6.2. Python – Операторы сравнения
- 6.3. Python – Операторы присваивания: примеры
- 6.4. Python – Побитовые операторы
- 6.5. Python – Логические операторы
- 6.6. Python – Операторы членства
- 6.7. Python – Операторы идентификации
- 6.8. Python – Приоритет операторов
- 7. Python – Условные операторы
- 7.1. Python – Условие if
- 7.2. Python – Условные операторы if. else и elif
- 7.3. Python – Вложенные операторы if
- 8. Python – Циклы
- 8.1. Python – Цикл while
- 8.2. Python – Цикл for
- 8.3. Python – Вложенные циклы
- 8.4. Python – Оператор break
- 8.5. Python – Оператор continue
- 8.6. Python – Оператор pass
- 9. Python – Числа
- 9.1. Python – Метод abs()
- 9.2. Python – Метод ceil()
- 9.3. Python – Метод cmp()
- 9.4. Python – Метод exp()
- 9.5. Python – Метод fabs()
- 9.6. Python – Метод floor()
- 9.7. Python – Метод log()
- 9.8. Python – Метод log10()
- 9.9. Python – Метод max()
- 9.10. Python – Метод min()
- 9.11. Python – Метод modf()
- 9.12. Python – Метод pow()
- 9.13. Python – Метод round()
- 9.14. Python – Метод sqrt()
- 9.15. Python – Метод choice()
- 9.16. Python – Метод randrange()
- 9.17. Python – Метод random()
- 9.18. Python – Метод seed()
- 9.19. Python – Метод shuffle()
- 9.20. Python – Метод uniform()
- 9.21. Python – Метод acos()
- 9.22. Python – Метод asin()
- 9.23. Python – Метод atan()
- 9.24. Python – Метод atan2()
- 9.25. Python – Метод cos()
- 9.26. Python – Метод hypot()
- 9.27. Python – Метод sin()
- 9.28. Python – Метод tan()
- 9.29. Python – Метод degrees()
- 9.30. Python – Метод radians()