Введение в Python - [5]

Шрифт
Интервал

Операторы в Python


Published: 07 October 2014


Говоря простым языком, в выражении 2 + 3, числа "2" и "3" называются операндами, знак "+" оператором. В языке программирования Python существуют следующие типы операторов:

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

* Операторы сравнения (реляционные)

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

* Побитовые операторы

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

* Операторы членства (Membership operators)

* Операторы тождественности (Identity operators)

Рассмотрим их по порядку.

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

Оператор

Описание

Примеры

+

Сложение - Суммирует значения слева и справа от оператора


15 + 5 в результате будет 20

20 + -3 в результате будет 17

13.4 + 7 в результате будет 20.4

-

Вычитание - Вычитает правый операнд из левого

15 - 5 в результате будет 10

20 - -3 в результате будет 23

13.4 - 7 в результате будет 6.4

*

Умножение - Перемножает операнды

5 * 5 в результате будет 25

7 * 3.2 в результате будет 22.4

-3 * 12 в результате будет -36

/

Деление - Делит левый операнд на правый

15 / 5 в результате будет 3

5 / 2 в результате будет 2 (В Python 2.x версии при делении двух целых чисел результат будет целое число)

5.0 / 2 в результате будет 2.5 (Чтобы получить "правильный" результат хотя бы один операнд должен быть float)

%

Деление по модулю - Делит левый операнд на правый и возвращает остаток.

6 % 2 в результате будет 0

7 % 2 в результате будет 1

13.2 % 5 в результате 3.2

**

Возведение в степень - возводит левый операнд в степень правого

5 ** 2 в результате будет 25

2 ** 3 в результате будет 8

-3 ** 2 в результате будет -9

//

Целочисленное деление - Деление в котором возвращается только целая часть результата. Часть после запятой отбрасывается.

12 // 5 в результате будет 2

4 // 3 в результате будет 1

25 // 6 в результате будет 4

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

Оператор

Описание

Примеры

==

Проверяет равны ли оба операнда. Если да, то условие становится истинным.

5 == 5 в результате будет True

True == False в результате будет False

"hello" == "hello" в результате будет True

!=

Проверяет равны ли оба операнда. Если нет, то условие становится истинным.

12 != 5 в результате будет True

False != False в результате будет False

"hi" != "Hi" в результате будет True

<>

Проверяет равны ли оба операнда. Если нет, то условие становится истинным.


12 <> 5 в результате будет True. Похоже на оператор !=

>

Проверяет больше ли значение левого операнда, чем значение правого. Если да, то условие становится истинным.

5 > 2 в результате будет True.

True > False в результате будет True.

"A" > "B" в результате будет False.

<

Проверяет меньше ли значение левого операнда, чем значение правого. Если да, то условие становится истинным.

3 < 5 в результате будет True.

True < False в результате будет False.

"A" < "B" в результате будет True.

>=

Проверяет больше или равно значение левого операнда, чем значение правого. Если да, то условие становится истинным.

1 >= 1 в результате будет True.

23 >= 3.2 в результате будет True.

"C" >= "D" в результате будет False.

<=

Проверяет меньше или равно значение левого операнда, чем значение правого. Если да, то условие становится истинным.

4 <= 5 в результате будет True.

0 <= 0.0 в результате будет True.

-0.001 <= -36 в результате будет False.

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

Оператор

Описание

Примеры

=

Присваивает значение правого операнда левому.

c = 23 присвоит переменной с значение 23

+=

Прибавит значение правого операнда к левому и присвоит эту сумму левому операнду.


с = 5

а = 2

с += а равносильно: с = с + а. с будет равно 7

-=

Отнимает значение правого операнда от левого и присваивает результат левому операнду.

с = 5

а = 2

с -= а равносильно: с = с - а. с будет равно 3

*=

Умножает правый операнд с левым и присваивает результат левому операнду.

с = 5

а = 2

с *= а равносильно: с = с * а. c будет равно 10

/=

Делит левый операнд на правый и присваивает результат левому операнду.

с = 10

а = 2

с /= а равносильно: с = с / а. c будет равно 5

%=

Делит по модулю операнды и присваивает результат левому.

с = 5

а = 2

с %= а равносильно: с = с % а. c будет равно 1

**=

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

с = 3

а = 2

с **= а равносильно: с = с ** а. c будет равно 9

//=

Производит целочисленное деление левого операнда на правый и присваивает результат левому операнду.

с = 11

а = 2

с //= а равносильно: с = с // а. c будет равно 5

Побитовые операторы в Python:

Побитовые операторы предназначены для работы с данными в битовом (двоичном) формате. Предположим, что у нас есть два числа a = 60; и b = 13. В двоичном формате они будут иметь следующий вид:

a = 0011 1100

b = 0000 1101

Оператор

Описание

Примеры

&

Бинарный "И" оператор, копирует бит в результат только если бит присутствует в обоих операндах.

(a & b) даст нам 12, которое в двоичном формате выглядит так 0000 1100

>|

Бинарный "ИЛИ" оператор копирует бит, если тот присутствует в хотя бы в одном операнде.

>(a | b) даст нам 61, в двоичном формате 0011 1101

^

Бинарный "Исключительное ИЛИ" оператор копирует бит только если бит присутствует в одном из операндов, но не в обоих сразу.


Рекомендуем почитать
Pro Git

Разработчику часто требуется много сторонних инструментов, чтобы создавать и поддерживать проект. Система Git — один из таких инструментов и используется для контроля промежуточных версий вашего приложения, позволяя вам исправлять ошибки, откатывать к старой версии, разрабатывать проект в команде и сливать его потом. В книге вы узнаете об основах работы с Git: установка, ключевые команды, gitHub и многое другое.В книге рассматриваются следующие темы:основы Git;ветвление в Git;Git на сервере;распределённый Git;GitHub;инструменты Git;настройка Git;Git и другие системы контроля версий.


Java 7

Рассмотрено все необходимое для разработки, компиляции, отладки и запуска приложений Java. Изложены практические приемы использования как традиционных, так и новейших конструкций объектно-ориентированного языка Java, графической библиотеки классов Swing, расширенной библиотеки Java 2D, работа со звуком, печать, способы русификации программ. Приведено полное описание нововведений Java SE 7: двоичная запись чисел, строковые варианты разветвлений, "ромбовидный оператор", NIO2, новые средства многопоточности и др.


MFC и OpenGL

В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.


Симуляция частичной специализации

В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.


Обработка событий в С++

В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.


Питон — модули, пакеты, классы, экземпляры

Python - объектно-ориентированный язык сверхвысокого уровня. Python, в отличии от Java, не требует исключительно объектной ориентированности, но классы в Python так просто изучить и так удобно использовать, что даже новые и неискушенные пользователи быстро переходят на ОО-подход.