Что значит //, %, not in, == и другие операторы Python ~ PythonRu
Главная Уроки №8 Операторы в Python / Уроки по Python для начинающих
Предыдущий урок: Строки в Python
Операторами пользуются для выполнения операций с переменными и значениями.
Python делит операторы на следующие группы:
- Арифметические операторы
- Операторы присваивания
- Операторы сравнения
- Логические операторы
- Операторы тождественности
- Операторы принадлежности
- Побитовые операторы
Арифметические операторы в Python
Арифметические операторы используются с числовыми значениями для выполнения общих математических операций:
Оператор | Значение | Пример |
---|---|---|
+ | добавление | 4 + 5 |
— | вычитание | 8 — 3 |
* | умножение | 5 * 5 |
/ | деление | 4 / 2 |
% | остаток от деления | 7 % 2 |
** | возведение в степень | 2 ** 3 |
// | целочисленное деление | 15 // 4 |
Операторы присваивания в Python
Операторы присваивания используются для присваивания значений переменным:
Оператор | Пример | Так же как |
---|---|---|
= | x = 5 | x = 5 |
+= | x += 3 | x = x + 3 |
-= | x -= 3 | x = x — 3 |
*= | x *= 3 | x = x * 3 |
/= | x /= 3 | x = x / 3 |
%= | x %= 3 | x = x % 3 |
//= | x //= 3 | x = x // 3 |
**= | x **= 3 | x = x ** 3 |
&= | x &= 3 | x = x & 3 |
|= | x |= 3 | x = x | 3 |
^= | x ^= 3 | x = x ^ 3 |
>>= | x >>= 3 | x = x >> 3 |
<<= | x <<= 3 | x = x << 3 |
Операторы сравнения в Python
Операторы сравнения используются для сравнения двух значений:
Оператор | Значение | Пример |
---|---|---|
== | равно | x == y |
!= | не равно | x != y |
> | больше чем | x > y |
< | меньше чем | x < y |
>= | больше чем или равно | x >= y |
<= | меньше чем или равно | x <= y |
Логические операторы в Python
Логические операторы используются для объединения условных операторов:
Оператор | Значение | Пример |
---|---|---|
and | Возвращает значение True если оба утверждения верны | x < 5 and x < 10 |
or | Возвращает True если одно из утверждений верно | x < 5 or x < 4 |
not | Меняет результат, возвращает False если результат True | not(x < 5 and x < 10) |
Операторы тождественности в Python
Операторы тождественности используются для сравнения объектов. Являются ли они одним и тем же объектом с одинаковым местоположением в памяти:
Оператор | Значение | Пример |
---|---|---|
is | Возвращает true если переменные являются одним объектом | x is y |
is not | Возвращает true если переменные разные | x is not y |
Операторы принадлежности в Python
Операторы принадлежности используются для проверки того, представлена ли последовательность в объекте:
Оператор | Значение | Пример |
---|---|---|
in | Возвращает True если последовательность присутствует в объекте | x in y |
not in | Возвращает True если последовательность не присутствует в объекте | x not in y |
Побитовые операторы в Python
Побитовые операторы используются для работы в битовом (двоичном) формате:
Оператор | Название | Значение |
---|---|---|
& | И | Устанавливает каждый бит в 1, если оба бита 1 |
| | Или | Устанавливает каждый бит в 1 если один из двух битов 1 |
^ | только или | Устанавливает каждый бит в 1 если только один из битов 1 |
~ | Не | Переставляет все биты |
<< | Сдвиг влево | Сдвигает влево на количество бит указанных справа |
>> | Сдвиг вправо | Сдвигает вправо на количество бит указанных справа |
Далее: Списки (list)
- ТЕГИ
- Уроки Python для начинающих
Максим
Я создал этот блог в 2018 году, чтобы распространять полезные учебные материалы, документации и уроки на русском. На сайте опубликовано множество статей по основам python и библиотекам, уроков для начинающих и примеров написания программ.
Python Q https://yandex.ru/q/loves/python Online
Python QCEO [email protected]://secure.gravatar.com/avatar/b16f253879f7349f64830c64d1da4415?s=96&d=mm&r=gCEO PythonruPythonАлександрРедакторhttps://t.me/cashncarryhttps://pythonru.com/https://yandex.ru/q/profile/cashnc/[email protected] Zabrodin2018-10-26OnlinePython, Programming, HTML, CSS, JavaScriptОператоры в Python — CodeChick
В этом уроке вы узнаете все о разных типах операторов в Python, их синтаксисе и примерах использования.
Что такое операторы
Операторы — специальные символы, которые выполняют арифметические и логические вычисления. Значения, на которые действует оператор, называются операндами.
Например:
>>> 2+3 5
Здесь оператор +
выполняет сложение, 2
и 3
— операнды, а 5
— вывод операции.
Арифметические операторы
Арифметические операторы используются для выполнения математических операций — сложения, вычитания, умножения и т. д.
Оператор | Действие | Пример |
+ | Сложение двух операндов или унарный плюс | x + y + 2 |
— | Вычитание правого оператора из левого или унарный минус | x — y- 2 |
* | Умножение двух операндов | x * y |
/ | Деление левого операнда на правый (результат всегда типа float) | x / y |
% | Остаток от деления левого операнда на правый | x % y (остаток от x / y) |
// | Деление с округлением — деление, результат которого корректируется в меньшую сторону | x // y |
** | Показатель степени — левый операнд возводится в значение правого операнда |
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 = 19
x - y = 11
x * y = 60
x / y = 3.75
x // y = 3
x ** y = 50625
Операторы сравнения
Операторы сравнения используются для сравнения значений, они возвращают
или False
в зависимости от условия.
Оператор | Действие | Пример |
> | Больше чем: True, если левый операнд больше правого | x > y |
< | Меньше чем: True, если левый операнд меньше правого | x < y |
== | Равно: True, если операнды равны между собой | x == y |
!= | Не равно: True, если операнды не равны между собой | x != y |
>= | Больше или равно: True, если левый операнд больше или равен правому | x >= y |
<= | Меньше или равно: True, если левый операнд меньше или равен правому | x <= y |
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
Логические операторы
Операторы and
, or
, not
— логические.
Оператор | Действие | Пример |
and | True, если значения обоих операндов True | x and y |
or | True, если значение одного из операндов True | x or y |
not | True, если значение операнда False (дополняет значение операнда) | not x |
x = True y = False print('x and y —', x and y) print('x or y —', x or y) print('not x —', not x)
Вывод:
x and y — False
x or y — True
not x — False
Побитовые операторы
Побитовые операторы работают с операндами как со строками из 0 и 1. Они действуют бит за битом, как и говорит название.
Например, 2 в двоичной системе счисления —
, а 7 — 111
. y = 14 (00001110
)
>>
Побитовый сдвиг вправо
x >> 2 = 2 (00000010
)
<<
Побитовый сдвиг влево
x << 2 = 40 (00101000
)
Операторы присваивания
Операторы присваивания используются для назначения переменной некоторого значения.
a = 5
— простой оператор присваивания, который приравнивает значение 5 справа переменной
слева.
В Python множество составных операторов, подобных a += 5
— он прибавляет 5 к переменной a
и позже присваивает ей получившееся значение. Этот оператор равносилен записи a = a + 5
.
Оператор | Пример | Эквивалентно |
| x = 5 | x = 5 |
| x += 5 | x = x + 5 |
| x -= 5 | x = x — 5 |
| x *= 5 | x = x * 5 |
| x /= 5 | x = x / 5 |
| x %= 5 | x = x % 5 |
| x //= 5 | x = x // 5 |
| x **= 5 | x = x ** 5 |
| x &= 5 | x = x & 5 |
| x |= 5 | |
| x ^= 5 | x = x ^ 5 |
| x >>= 5 | x = x >> 5 |
| x <<= 5 | x = x << 5 |
В Python есть особые типы операторов: операторы тождественности и принадлежности.
Операторы тождественности
is
и is not
— операторы тождественности в Python. Они проверяют, находятся ли два значения (или две переменные) по одному адресу в памяти. То, что две переменные равны еще не значит, что они идентичны.
Оператор | Действие | Пример |
| True, если операнды идентичны (указывают на один объект) | x is True |
| True, если операнды не идентичны (не указывают на один объект) | x is not True |
x1 = 5 y1 = 5 x2 = 'Привет' y2 = 'Привет' 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. Они проверяют, есть ли значение или переменная в последовательности (строке, списке, кортеже, множестве или словаре). Иначе говоря, проверяют вхождение элемента в коллекцию. В словаре можно проверить только присутствие ключа, не значения.
Оператор | Действие | Пример |
| True, если значение или переменная есть в последовательности | 5 in x |
| True, если значения или переменной нет в последовательности | 5 not in x |
x = 'Привет, мир' y = {1:'a',2:'b'} # Вывод: True print('П' in x) # Вывод: True print('привет' not in x) # Вывод: True print(1 in y) # Вывод: False print('б' in y)
Вывод:
True
True
True
False
'П'
есть в x
, а вот строки 'привет'
в x
нет (помните: Python чувствителен к регистру). Таким же образом образом 1
— ключ, а 'a'
— значение в словаре y
, поэтому вывод 'б' in y
— False
.
Что значит //, %, not in, == и другие операторы Python
Автор Амина С. На чтение 8 мин Опубликовано
Операторы – это специальные знаки, которые являются командой для интерпретатора Python по выполнению определенных задач. Они бывают абсолютно разными: арифметическими, операторами сравнения, тождественности, принадлежности и так далее. Все они имеют различные особенности, которые сегодня мы рассмотрим более подробно.
Содержание
- Арифметические операторы Python
- Операторы присваивания Python
- Операторы сравнения Python
- Логические операторы Python
- Операторы тождественности Python
- Операторы принадлежности Python
- Побитовые операторы Python
Арифметические операторы Python
Как можно догадаться из названия, арифметические операторы нужны для того, чтобы совершать несложные арифметические операции. К таковым относятся:
- Сложение. Для этого используется оператор +, который является таким же, как и известный математический знак, выполняющий эту функцию.
- Вычитание. Эта операция осуществляется с использованием знака «–».
- Умножение. В большинстве компьютерных программ данная арифметическая операция выполняется с использованием знака звездочки *. Python – не исключение.
- Деление. Для этого используется знак слэша /. Внимание! Он должен быть направлен именно в эту сторону.
- Остаток от деления. Выглядит так, как математический знак процента (%), но имеет другую функцию.
- Возведение в степень. Отличается от аналогичного знака в арифметике. Выглядит, как две звездочки, расположенные по горизонтали (**).
- Деление без остатка. Этот оператор получает исключительно целое число, округленное в меньшую сторону (так, чтобы оставался остаток). При этом он не возвращает остатка.
Теперь перейдем к описанию принципа работы этих операторов (равно, как и других). Сначала необходимо разобраться в значении слова «операнд». Это те фрагменты информации, над которыми осуществляется операция. В нашем случае – арифметическая.
Любые операнды размещаются по разные стороны оператора. В случае с математическими операторами, в большинстве случаев это будет стандартное арифметическое выражение типа a + b = c или n = a+3.
Но оператор деления по модулю, например, будет использоваться таким образом.
с = 10 % 3.
То есть, каждый из описанных выше знаков ставится между операндами. А получившееся выражение может присваиваться другой переменной или же использоваться в качестве аргумента функции.
Операторы присваивания Python
Присваивание значения переменной – одна из самых распространенных операций. С ее помощью можно передавать ей необходимую информацию, которая в дальнейшем может использоваться программой. Без нее невозможно представить программирования. А для большего удобства использования количество операторов присваивания в Python очень большое.
Рассмотрим наиболее распространенные из них.
Оператор =. Это классический оператор присваивания. Обратите внимание, он не проверяет равенство операндов, за это отвечает другой оператор. Он именно используется для присваивания значений или объектов переменным.
Тем не менее, в некоторых случаях он может читаться, как знак «равно», но только если речь не идет о сравнении операндов.
Пример.
x = 5.
Эта простая строчка кода присваивает переменной x значение 5. То есть, она может читаться, как «x равно 5». Но при этом осуществляется не констатация факта, а действие, после которого переменная x становится равной 5. А до этого действия она может как вовсе отсутствовать, так и содержать любое другое значение.
Это единственный оператор этой категории, который выполняет одно действие. Остальные же совершают сразу 2.
Оператор +=. Этот оператор сначала добавляет к переменной то число, которое находится во втором операнде, а потом делает так, чтобы эта переменная имела соответствующее значение.
x += 3
Это то же самое, что x = x + 3.
В целом, любой из операторов может быть заменен на аналогичное выражение, где переменная равно переменная, оператор, операнд 2. Дальше мы приведем еще несколько таких примеров для наглядности, и такая же логика будет действовать для всех операторов присваивания.
Оператор –=. Выполняет похожую операцию на ту, что делает предыдущий оператор, но при этом со знаком «минус». Он сначала берет переменную, которая стоит в первом операнде, отнимает от содержащегося в ней числе значение, расположенное в правом операнде, а потом результат присваивает этой же переменной, которая стоит в левом операнде.
На практике все значительно проще, чем может показаться, когда вы читали это правило. Оператор –= аналогичен выражению x = x-y. Просто оно более сокращенное.
Приведем пример.
x -= 3
Если вместо x подставить значение 2, то получится число -1, поскольку если от двух отнять 3, выйдет именно -1.
Оператор *=. Аналог предыдущих двух операторов присваивания, только выполняющий операцию умножения. Соответственно, принцип его работы аналогичный.
В целом, по такому же принципу работают все остальные операторы. Например, есть оператор деления, который также ставится перед знаком равно, а также деление по модулю, остаток от деления и так далее. Давайте приведем таблицу с описанием всех имеющихся операторов сравнения при их соединении с другими.
Операторы сравнения Python
Они используются, чтобы сопоставить операнды друг с другом и понять, они равны, или какое-то из них большее, или меньшее.
Рассмотрим существующие операторы сравнения.
Равно (==). Как и говорилось выше, этот оператор выглядит несколько иначе, чем оператор присваивания. Выглядит он, как два математических знака «равно», стоящих вместе. Он проверяет равенство двух операндов, и в случае соблюдения этого критерия возвращает значение «истина».
Не равно (!=). Также отличается от аналогичного арифметического знака в математике. Противоположный по значению оператор. Возвращает истину, если указанный выше критерий не соблюдается.
Больше, чем (>) и меньше, чем (<). Операторы, аналогичные таковым в математике.
Больше или равно (>=) и меньше или равно (<=). Аналоги соответствующих операторов в математике с несколько иным описанием.
Приведем сводную таблицу со значениями и примерами использования этих операторов.
Логические операторы Python
Предназначены для связывания объектов между собой. Используются для задания условия, при котором выполняются определенные действия или для указания критерия, при котором выполняется цикл или осуществляется выход из него. Всего существует три логических оператора в этом языке программирования
И (and). Объединяет условия между собой. Если оба критерия оказываются верными, оператор возвращает значение «истина». Если же нет, то «ложь».
ИЛИ (or). Проверяет истинность хотя бы одного из указанных операндов. Если из них есть один, который соответствует действительности, то возвращается значение «истина». Если же нет, то «ложь».
НЕ (not). Выполняет инверсию результата вывода логического оператора или функции. То есть, истина становится ложью и наоборот.
Приведем сводную таблицу с примерами использования этих операторов, а также их значениями.
Операторы тождественности Python
Если требуется сравнить несколько объектов между собой, используются операторы тождественности. При этом они отличаются по принципу действия от операторов сравнения с тем, поскольку критерием для тождественности является нахождение операндов в одной и той же части памяти.
Есть всего два оператора тождественности:
- Выполняет сравнение, операндов, и если они являются идентичными, то возвращается значение true. Соответственно, если этот критерий не соблюдается, возвращается значение false.
is not. Противоположный по принципу работы оператор. В случае тождественности операндов друг другу возвращает false.
Приведем наглядную таблицу с описанием использования операторов тождественности в Python.
Операторы принадлежности Python
Python также умеет раскладывать объекты на составляющие и проверять, является ли один объект составной частью другого. Типичный пример использования – строки. Например, с их помощью можно проверять, является ли одна подстрока составной частью другой подстроки. Соответственно, возвращается логический результат, предусмотренный подходящим оператором.
В Python есть два оператора принадлежности – in и not in. По синтаксису они напоминают все остальные. Сначала ставится операнд 1, после этого оператор, а потом – операнд 2. И выполняют они похожие действия. Просто если строка является составной частью большей строки (или меньший объект – составляющей большего), то оператор in возвращает значение True. Если же здесь бы использовался оператор not in, то возвращаемое значение было бы False.
Приведем небольшую таблицу с примерами использования этих операторов (вернее, шаблонами), а также – их значениями.
Побитовые операторы Python
Самая сложная для понимания категория операторов. Настолько сложная, что для этого нужно отдельно рассматривать принцип работы каждого из них. Ведь каждый работает по определенным формулам. Они поддаются логике, она будет указана в таблице ниже. Тем не менее, это все равно довольно сложно.
Начнем с того, что они работают с битами. То есть, с нулями и единицами, а не привычными значениями. Например, оператор & каждый бит делает единицей лишь при условии, что каждый бит операндов на соответствующих позициях равен единице.
Вот более подробная таблица с использованием этих операторов.
Мы разобрались с самыми часто используемыми операторами в Python, а также рядом других, сфера применения которых более ограниченная. Следует отметить, что операторы – это одна из самых простых тем в программировании. Они почти не отличаются от привычных нам математических знаков, просто список символов, которые используются, несколько больше. При этом принцип их работы доступен для понимания каждому новичку. Единственное исключение – побитовые операторы, которые заслуживают отдельного рассмотрения.
Оцените качество статьи. Нам важно ваше мнение:
операторов Python
❮ Предыдущая Далее ❯
Операторы Python
Операторы используются для выполнения операций над переменными и значениями.
В приведенном ниже примере мы используем оператор +
для сложения двух значений:
Пример
print(10 + 5)
Выполнить пример »
Python разделяет операторы на следующие группы:
- 1
- 1
- 1 Арифметические операторы
- Операторы присваивания
- Операторы сравнения
- Логические операторы
- Идентификационные операторы
- Операторы членства
- Побитовые операторы
Арифметические операторы Python
Арифметические операторы используются с числовыми значениями для выполнения общих математических операций:
Оператор | Имя | Пример | Попробуйте |
---|---|---|---|
+ | Дополнение | х + у | Попробуй » |
— | Вычитание | х — у | Попробуй » |
* | Умножение | х*у | Попробуй » |
/ | Подразделение | х/у | Попробуй » |
% | Модуль | х % у | Попробуй » |
** | Возведение в степень | х ** у | Попробуй » |
// | Разделение этажа | х//у | Попробуй » |
Операторы присваивания Python
Операторы присваивания используются для присвоения значений переменным:
Оператор | Пример | То же, что и | Попробуйте | |
---|---|---|---|---|
= | х = 5 | х = 5 | Попробуй » | |
+= | х += 3 | х = х + 3 | Попробуй » | |
-= | х -= 3 | х = х — 3 | Попробуй » | |
*= | х *= 3 | х = х * 3 | Попробуй » | |
/= | х /= 3 | х = х / 3 | Попробуй » | |
%= | х %= 3 | х = х % 3 | Попробуй » | |
//= | х //= 3 | х = х // 3 | Попробуй » 93 | Попробуй » |
>>= | х >>= 3 | х = х >> 3 | Попробуй » | |
<<= | х <<= 3 | х = х << 3 | Попробуй » |
Операторы сравнения Python
Операторы сравнения используются для сравнения двух значений:
Оператор | Имя | Пример | Попробуйте |
---|---|---|---|
== | Равно | х == у | Попробуй » |
!= | Не равно | х != у | Попробуй » |
> | Больше | х > у | Попробуй » |
< | Менее | х < у | Попробуй » |
>= | Больше или равно | х >= у | Попробуй » |
<= | Меньше или равно | х <= у | Попробуй » |
Логические операторы Python
Логические операторы используются для объединения условных операторов:
Оператор | Описание | Пример | Попробуйте |
---|---|---|---|
и | Возвращает True, если оба утверждения верны | х < 5 и х < 10 | Попробуй » |
или | Возвращает True, если одно из утверждений верно | х < 5 или х < 4 | Попробуй » |
не | Обратный результат, возвращает False, если результат верен | не (х < 5 и х < 10) | Попробуй » |
Операторы идентификации Python
Операторы идентификации используются для сравнения объектов не в том случае, если они равны, а в том случае, если они на самом деле являются одним и тем же объектом с одинаковым расположением в памяти:
Оператор | Описание | Пример | Попробуйте |
---|---|---|---|
это | Возвращает True, если обе переменные являются одним и тем же объектом | х есть у | Попробуй » |
не | Возвращает True, если обе переменные не являются одним и тем же объектом | х не у | Попробуй » |
Операторы принадлежности Python
Операторы принадлежности используются для проверки наличия последовательности в объекте:
Оператор | Описание | Пример | Попробуйте |
---|---|---|---|
в | Возвращает True, если последовательность с указанным значением присутствует в объекте | х в у | Попробуй » |
нет в | Возвращает True, если последовательность с указанным значением отсутствует в объект | х нет в у | Попробуй » |
Побитовые операторы Python 9
Проверьте себя с помощью упражнений
Упражнение:
Умножьте 10
на 5
и распечатайте результат.
печать(10 5)
Начать упражнение
❮ Предыдущий Далее ❯
НОВИНКА
Мы только что запустили
Видео W3Schools
Узнать
ВЫБОР ЦВЕТА
КОД ИГРЫ
Играть в игру
Top Tutorials
Учебник по HTMLУчебник по CSS
Учебник по JavaScript
Учебник How To
Учебник по SQL
Учебник по Python
Учебник по W3.CSS
Учебник по Bootstrap
Учебник по PHP
Учебник по Java
Учебник по C++
Учебник по jQuery
3 900
Справочник по HTML
Справочник по CSS
Справочник по JavaScript
Справочник по SQL
Справочник по Python
Справочник по W3.CSS
Справочник по Bootstrap
Справочник по PHP
Цвета HTML
Справочник по Java
Справочник по Angular
Справочник по jQuery
Основные примеры
Примеры HTMLПримеры CSS
Примеры JavaScript
Примеры инструкций
Примеры SQL
Примеры Python
Примеры W3. CSS
Примеры Bootstrap
Примеры PHP
Примеры Java
Примеры XML
Примеры jQuery
FORUM | О
W3Schools оптимизирован для обучения и обучения. Примеры могут быть упрощены для улучшения чтения и обучения. Учебники, ссылки и примеры постоянно пересматриваются, чтобы избежать ошибок, но мы не можем гарантировать полную правильность всего содержания. Используя W3Schools, вы соглашаетесь прочитать и принять наши условия использования, куки-файлы и политика конфиденциальности.
Copyright 1999-2022 Refsnes Data. Все права защищены.
W3Schools работает на основе W3.CSS.
operator — Стандартные операторы как функции — Документация по Python 3.10.7
Исходный код: Lib/operator.py
Модуль оператора
экспортирует набор эффективных функций, соответствующих
внутренние операторы Python. Например, operator.add(x, y)
— это
эквивалентно выражению x+y
. Многие имена функций используются для
специальные методы, без двойных подчеркиваний. Для обратной совместимости,
многие из них имеют вариант с сохранением двойного подчеркивания. Варианты
без двойных подчеркиваний предпочтительнее для ясности.
Функции делятся на категории, выполняющие сравнения объектов, логические операции, математические операции и операции над последовательностями.
Функции сравнения объектов полезны для всех объектов и названы в честь богатые операторы сравнения, которые они поддерживают:
-
оператор.
л
( а , б ) -
оператор.
ле
( а , б ) -
оператор.
экв.
( а , б ) -
оператор.
пэ
( a , b ) -
оператор.
гэ
( а , б ) -
оператор.
гт
( а , б ) -
оператор.
__lt__
( а , б ) -
оператор.
__le__
( а , б ) -
оператор.
__eq__
( а , б ) -
оператор.
__ne__
( а , б ) -
оператор.
__ge__
( а , б ) -
оператор.
__gt__
( а , б ) Выполнение «богатых сравнений» между a и b . В частности,
лт(а, б)
это эквивалентноa < b
,le(a, b)
эквивалентноa <= b
,eq(a, б)
эквивалентноa == b
,ne(a, b)
эквивалентноa != b
,gt(a, b)
эквивалентноa > b
иge(a, b)
эквивалентноa >= б
. Обратите внимание, что эти функции могут возвращать любое значение, которое может или не может интерпретироваться как логическое значение. Видеть Сравнения для получения дополнительной информации о расширенных сравнениях.
Логические операции также обычно применимы ко всем объектам и поддерживают проверки истинности, проверки подлинности и логические операции:
-
оператор.
не_
( обж ) -
оператор.
__не__
( объект ) Вернуть результат
вместо
obj . (Обратите внимание, что нет__not__()
метод для экземпляров объектов; только ядро интерпретатора определяет эта операция. На результат влияет__bool__()
и__len__()
методов.)
-
оператор.
правда
( объект ) Возврат
True
, если obj верен, иFalse
в противном случае. Это эквивалентно использованию конструктораbool
.
-
оператор.
ис_
( а , б ) Возврат
a is b
. Проверяет идентичность объекта.
-
оператор.
is_not
( a , b ) Возврат
a не b
. Проверяет идентичность объекта.
Наиболее многочисленны математические и побитовые операции:
-
оператор.
абс
( обж ) -
оператор.
__абс__
( объект ) Вернуть абсолютное значение obj 906:50 .
-
оператор.
добавить
( а , б ) -
оператор.
__add__
( а , б ) Возврат
a + b
, для номеров a и b .
-
оператор.
и_
( а , б ) -
оператор.
__и__
( a , б ) Возвращает побитовое и a и b .
-
оператор.
полдив
( a , b ) -
оператор.
__floordiv__
( a , b ) Возврат
а // б
.
-
оператор.
индекс
( и ) -
оператор.
__индекс__
( и ) Возвращает a , преобразованное в целое число. Эквивалентно
a.__index__()
.Изменено в версии 3.10: результат всегда имеет точный тип
int
. Ранее результат мог быть экземпляром подклассаint
.
-
оператор.
инв
( объект ) -
оператор.
инвертировать
( объект ) -
оператор.
__inv__
( объект ) -
оператор.
__инверсия__
( объект ) Возвращает побитовое обратное число obj . Это эквивалентно
~obj
.
-
оператор.
лсмена
( а , б ) -
оператор.
__lshift__
( а , б ) Возврат a сдвинуты влево на b .
-
оператор.
мод
( а , б ) -
оператор.
__mod__
( а , б ) Возврат
а % б
.
-
оператор.
мул
( a , b ) -
оператор.
__mul__
( а , б ) Возврат
a * b
, для номеров a и b .
-
оператор.
матмуль
( а , б ) -
оператор.
__матмул__
( а , б ) Возврат
a @ b
.Новое в версии 3.5.
-
оператор.
отрицательный
( объект ) -
оператор.
__отрицательный__
( объект ) Возврат obj инвертированный (
-obj
).
-
оператор.
или_
( a , b ) -
оператор.
__или__
( a , b ) Возвращает побитовое или a и b .
-
оператор.
поз.
( обж ) -
оператор.
__pos__
( объект ) Возврат объект положительный (
+ объект
).
-
оператор.
пау
( а , б ) -
оператор.
__pow__
( а , б ) Возврат
a ** b
, для номеров a и b .
-
оператор.
rshift
( a , b ) -
оператор.
__rshift__
( а , б ) Возврат a сдвинут вправо на b .
-
оператор.
суб
( а , б ) -
оператор.
__sub__
( а , б ) Возврат
а - б
.
-
оператор.
truediv
( a , b ) -
оператор.
__truediv__
( а , б ) Возврат
a / b
, где 2/3 равно 0,66, а не 0. Это также известно как «истинное» деление.
-
оператор.
xor
( a , b ) -
оператор.
__xor__
( а , б ) Возвращает побитовое исключающее или a и b .
Операции, которые работают с последовательностями (некоторые из них также с отображениями), включают:
-
оператор.
конкат
( а , б ) -
оператор.
__concat__
( а , б ) Возврат
a + b
для a и b последовательностей.
-
оператор.
содержит
( a , b ) -
оператор.
__содержит__
( a , b ) Вернуть результат теста
b в виде
. Обратите внимание на обратные операнды.
-
оператор.
countOf
( a , b ) Возвращает количество вхождений б в а .
-
оператор.
разделитель
( a , b ) -
оператор.
__delitem__
( а , б ) Удалить значение a по индексу b .
-
оператор.
getitem
( a , b ) -
оператор.
__getitem__
( а , б ) Вернуть значение a по индексу b .
-
оператор.
индекс
( a , b ) Возвращает индекс первого вхождения b в a .
-
оператор.
набор
( а , б , с ) -
оператор.
__setitem__
( a , b , c ) Установите значение a в индексе b на c .
-
оператор.
length_hint
( obj , по умолчанию=0 ) Возврат предполагаемой длины объекта o . Сначала попробуйте вернуть его фактическая длина, затем оценка с использованием
object.__length_hint__()
и наконец, вернуть значение по умолчанию.Новое в версии 3.4.
Модуль оператора
также определяет инструменты для обобщенного атрибута и элемента
поиск. Они полезны для создания быстрых экстракторов полей в качестве аргументов для map()
, sorted()
, itertools.groupby()
или другие функции, которые
ожидать аргумент функции.
-
оператор.
атрибут
( атрибут ) -
оператор.
атрибут
( *атрибут ) Возвращает вызываемый объект, который извлекает attr из своего операнда. Если запрашивается более одного атрибута, возвращает кортеж атрибутов. Имена атрибутов также могут содержать точки. Например:
После
f = attrgetter('name')
вызовf(b)
возвращаетb.name
.После
f = attrgetter('имя', 'дата')
вызовf(b)
возвращает(имя рождения, дата рождения)
.После
f = attrgetter('name.first', 'name.last')
, вызовf(b)
возвращает(b.name.first, b.name.last)
.
Эквивалент:
по умолчанию attrgetter(*items): если есть (не isinstance (item, str) для элемента в элементах): поднять TypeError('имя атрибута должно быть строкой') если len(items) == 1: атрибут = элементы [0] определение г (объект): вернуть resolve_attr (obj, attr) еще: определение г (объект): вернуть кортеж (resolve_attr (obj, attr) для attr в элементах) вернуть г def resolve_attr (obj, attr): для имени в attr. split("."): obj = getattr(obj, имя) вернуть объект
-
оператор.
пункт получения
( пункт ) -
оператор.
получатель предметов
( * предметы ) Вернуть вызываемый объект, который извлекает элемент из своего операнда, используя метод операнда
__getitem__()
. Если указано несколько элементов, возвращает кортеж поисковых значений. Например:После
f = itemgetter(2)
вызовf(r)
возвращаетr[2]
.После
g = itemgetter(2, 5, 3)
вызовg(r)
возвращает значение(г[2], г[5], г[3])
.
Эквивалент:
дефгеттер(*items): если len(items) == 1: предмет = предметы[0] определение г (объект): вернуть объект[предмет] еще: определение г (объект): возвращаемый кортеж (obj[item] для элемента в элементах) вернуть г
Элементы могут быть любого типа, допустимого операндом
__getitem__()
метод. Словари принимают любое хешируемое значение. Списки, кортежи и строки принимают индекс или срез:>>> пункт получения(1)('ABCDEFG') 'Б' >>> элементгеттер(1, 3, 5)('ABCDEFG') («Б», «Д», «Ф») >>> itemgetter(slice(2, None))('ABCDEFG') 'CDEFG' >>> солдат = dict(rank='капитан', name='dotterbart') >>> itemgetter('ранг')(солдат) 'капитан'
Пример использования
itemgetter()
для извлечения определенных полей из запись кортежа:>>> inventory = [('яблоко', 3), ('банан', 2), ('груша', 5), ('апельсин', 1)] >>> getcount = элементполучатель(1) >>> список(карта(getcount, инвентарь)) [3, 2, 5, 1] >>> отсортировано(инвентарь, ключ=getcount) [('апельсин', 1), ('банан', 2), ('яблоко', 3), ('груша', 5)]
-
оператор.
methodcaller
( имя , /, *args , **kwargs ) Вернуть вызываемый объект, который вызывает метод имя в его операнде. Если даны дополнительные аргументы и/или аргументы ключевого слова, они будут переданы к методу тоже. Например:
После
f = methodcaller('name')
вызовf(b)
возвращаетb.name()
.После
f = methodcaller('name', 'foo', bar=1)
, вызовf(b)
возвращаетb.name('foo', bar=1)
.
Эквивалент:
def methodcaller(name, /, *args, **kwargs): вызывающий абонент (obj): вернуть getattr(obj, name)(*args, **kwargs) перезвонить
Преобразование операторов в функции
В этой таблице показано, как абстрактные операции соответствуют символам операторов в
Синтаксис Python и функции в модуле оператора
.
Эксплуатация | Синтаксис | Функция |
---|---|---|
Дополнение | | |
Объединение | | |
Проверка сдерживания | | |
Отдел | | 9б |
Побитовая инверсия | | |
Побитовый или | | |
Возведение в степень | | |
Идентификация | | |
Идентификация | | |
Индексированное назначение | | |
Индексированное удаление | | |
Индексация | | |
Сдвиг влево | | |
Модуль | | |
Умножение | | |
Умножение матриц | | |
Отрицание (арифметическое) | | |
Отрицание (логическое) | | |
Положительный | | |
Правый сдвиг | | |
Назначение среза | | |
Удаление фрагмента | | |
Нарезка | | |
Форматирование строк | | |
Вычитание | | |
Проверка правды | | |
Заказ | | |
Заказ | | |
Равенство | | |
Разница | | |
Заказ | | |
Заказ | | |
Операторы на месте
Многие операции имеют версию «на месте». Ниже перечислены функции
предоставление более примитивного доступа к операторам на месте, чем обычный синтаксис
делает; например, оператор x += y
эквивалентен х = оператор.iadd(x, y)
. Другой способ выразить это - сказать, что z = operator.iadd(x, y)
эквивалентно составному оператору г = х; г += у
.
Обратите внимание, что в этих примерах при вызове метода на месте вычисление и присваивание выполняются в два отдельных шага. Функции на месте перечисленные ниже, делают только первый шаг, вызывая метод на месте. Секунда шаг, присваивание, не обрабатывается.
Для неизменяемых целей, таких как строки, числа и кортежи, обновленный значение вычисляется, но не присваивается входной переменной:
>>> а = 'привет' >>> iadd(a, 'мир') 'Привет, мир' >>> а 'привет'
Для изменяемых целей, таких как списки и словари, метод на месте выполнит обновление, поэтому последующее присвоение не требуется:
>>> s = ['h', 'e', 'l', 'l', 'o'] >>> iadd(s, [' ', 'ж', 'о', 'р', 'л', 'д']) ['Привет, мир'] >>> с ['Привет, мир']
-
оператор.
иадд
( а , б ) -
оператор.
__iadd__
( а , б ) a = iadd(a, b)
эквивалентноa += b
.
-
оператор.
и
( а , б ) -
оператор.
__и__
( а , б ) a = iand(a, b)
эквивалентноa &= b
.
-
оператор.
iconcat
( a , b ) -
оператор.
__iconcat__
( а , б ) a = iconcat(a, b)
эквивалентноa += b
для последовательностей a и b .
-
оператор.
ифлордив
( а , б ) -
оператор.
__ifloordiv__
( a , b ) a = ifloordiv(a, b)
эквивалентноa //= b
.
-
оператор.
илшифт
( а , б ) -
оператор.
__ilshift__
( а , б ) a = ilshift(a, b)
эквивалентноа <<= б
.
-
оператор.
имод
( а , б ) -
оператор.
__imod__
( а , б ) a = imod(a, b)
эквивалентноa %= b
.
-
оператор.
имул
( а , б ) -
оператор.
__имул__
( а , б ) a = imul(a, b)
эквивалентноa *= b
.
-
оператор.
иматмул
( а , б ) -
оператор.
__imatmul__
( а , б ) a = imatmul(a, b)
эквивалентноa @= b
.Новое в версии 3.5.
-
оператор.
или
( а , б ) -
оператор.
__ior__
( а , б ) a = ior(a, b)
эквивалентноa |= b
.
-
оператор.
ипоу
( а , б ) -
оператор.
__ipow__
( а , б ) a = ipow(a, b)
эквивалентноа **= б
.
-
оператор.
иршифт
( а , б ) -
оператор.
__irshift__
( а , б ) a = irshift(a, b)
эквивалентноa >>= b
.
-
оператор.
isub
( а , б ) -
оператор.
__isub__
( а , б ) a = issub(a, b)
эквивалентноa -= b
.
-
оператор.
itruediv
( a , b ) -
оператор.
__itruediv__
( а , б ) a = itruediv(a, b)
эквивалентноa /= b
.
-
оператор.
иксор 9= б
.
Операторы Python — GeeksforGeeks
Операторы Python обычно используются для выполнения операций со значениями и переменными. Это стандартные символы, используемые для логических и арифметических операций. В этой статье мы рассмотрим различные типы операторов Python.
- ОПЕРАТОРЫ: Специальные символы. Например, + , * , / и т. д.
- ОПЕРАНД: Это значение, к которому применяется оператор.
Арифметические операторы используются для выполнения математических операций, таких как сложение, вычитание, умножение и деление.
- В Python 3.x результатом деления является число с плавающей запятой, в то время как в Python 2.x деление 2 целых чисел было целым числом, а для получения целочисленного результата в Python 3.x используется пол (// целое число).
Оператор | Описание | Синтаксис | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
+ | Дополнение: добавляет два операнда | x + y | |||||||||
- | Вычитание: вычтите два операции | x - y | |||||||||
* | . | ||||||||||
/ | Деление (с плавающей точкой): делит первый операнд на второй | x/y | |||||||||
// | Деление (этаж): делит первый операнд на второй | x // y | |||||||||
% | Модуль: возвращает остаток от деления первого операнда на второй ** y |
Припокат:
- P - Клори
- E - Экспонент. тот же приоритет)
- S – Вычитание
Оператор модуля помогает нам извлечь последние цифры числа. For example:
- x % 10 -> yields the last digit
- x % 100 -> yield last two digits
Python3
= a / / b 0010 print |
Выход
13 5 36 2,25 2 1 6561
Примечание: Обратитесь к Различия между / и // для некоторых интересных фактов об этих двух операторах.
Сравнение
ОператорыСравнение операторов отношения сравнивает значения. Он либо возвращает True , либо False в зависимости от условия.
Operator | Description | Syntax |
---|---|---|
> | Greater than: True if the left operand is greater than the right | x > y |
< | Less than: True если левый операнд меньше правого | x < y |
== | Равно: Истинно, если оба операнда равны | x == y |
!= | x 5 05Не равны – Истинно, если операнды равны 904 05 | Не равны – = y |
>= | Больше или равно True, если левый операнд больше или равен правому левый операнд меньше или равен правому | x <= y |
is | x is the same as y | x is y |
is not | x is not the same as y | x is not y |
= — это оператор присваивания, а == — оператор сравнения.
Пример: операторы сравнения в PythonPython3
|
444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444н. Истинный
ЛОЖЬ
Истинный
ЛОЖЬ
True Логические операторы выполняют Логические И , Логические ИЛИ и Логические НЕ операции. Он используется для объединения условных операторов. Выход Побитовые операторы воздействуют на биты и выполняют побитовые операции. Они используются для работы с двоичными числами. Выход Операторы присваивания используются для присвоения значений переменным. Выход — это , а — это не . Оба оператора идентификации используются для проверки того, находятся ли два значения в одной и той же части памяти. Две равные переменные не означают, что они идентичны. Output в и не в являются операторами принадлежности; используется для проверки того, входит ли значение или переменная в последовательность. Выход Приоритет и ассоциативность операторов: Приоритет и ассоциативность операторов определяют приоритеты оператора. Используется в выражении с более чем одним оператором с разным приоритетом, чтобы определить, какую операцию выполнять первой. Output Если выражение содержит два или более операторов с одинаковым приоритетом, то для определения используется ассоциативность операторов. Это может быть как слева направо, так и справа налево. Выход Операторы деления позволяют разделить два числа и получить частное, т. е. первое число или число слева делится на второе число или число справа и возвращает частное. Существует два типа операторов деления: Частное, возвращаемое этим оператором, всегда является числом с плавающей запятой, независимо от того, являются ли два числа целыми. Например: Частное, возвращаемое этим оператором, зависит от передаваемого аргумента. Если какое-либо из чисел является числом с плавающей запятой, он возвращает вывод в формате с плавающей запятой. Это также известно как деление на пол, потому что, если какое-либо число отрицательное, выход будет половинчатым. Например: Рассмотрим приведенные ниже операторы в Python. Выход: Первый вывод в порядке, но второй может удивить, если мы приближаемся к миру Java/C++. В Python оператор «//» работает как деление пола для аргументов с целыми числами и числами с плавающей запятой. Однако оператор деления ‘/’ всегда возвращает значение с плавающей запятой. Примечание: Оператор «//» используется для возврата ближайшего целочисленного значения, которое меньше или равно указанному выражению или значению. Таким образом, из приведенного выше кода 5//2 возвращает 2. Вы знаете, что 5/2 равно 2,5, а ближайшее целое число, меньшее или равное, равно 2[5//2]. (это обратно к обычной математике, в обычной математике значение равно 3). Example Выход Реальный оператор разделения этажей — «//». Он возвращает минимальное значение как для целых аргументов, так и для аргументов с плавающей запятой. Выход См. например. Тернарные операторы Тернарные операторы, также известные как условные выражения, представляют собой операторы, которые оценивают что-либо на основе истинности или ложности условия. Он был добавлен в Python в версии 2. 5. Syntax : Output: 09033333499990333334999903333349903333333333333333333334 0 мо Вывод: The above approach can be written as: . operator in python3 Вывод: Оператор Описание Синтаксис и Logical и: True, если оба оперные. операнды истинны x или y не Логическое НЕ: Истинно, если операнд ложен не x Пример: логические операторы в Python
Python3
a
=
True
b
=
False
print
(a
and
b)
Печать
(A
или
B)
Печать
(
НЕ
A)
(
Не
A)
. 0011
Ложь
Истинный
False
Побитовые операторы Оператор Описание Синтаксис и и биту и X & Y | Побитовое ИЛИ 9Y >> BITWOAD RIGHT SHIFT x >> 3 << BITWERY LEAND SHIFT x << x << 3.
A
=
10
B
=
4
Печать
(A & B)
Печать
(A & B)
(A & B)
b)
print
(a >>
2
)
print
(a <<
2
)
0
14
-11
14
2
40
Операторы присваивания Operator Description Syntax = Assign value of right side of expression to left side operand x = y + z += Add AND: Add правый операнд с левым операндом, а затем присвоить левому операнду a+=b a=a+b -= Вычесть И: вычесть правый операнд из левого операнда и затем присвоить левому операнду a-=b a=a-b *= Умножить И: умножить правый операнд на левый операнд и затем присвоить левому операнду a*=b a=a*b 5 Разделить И: разделить левый операнд на правый и затем присвоить левому операнду левый операнд a%=b a=a%b //= Разделить (пол) И: разделить левый операнд на правый операнд и затем присвоить значение (пол) левому операнду a//=b a=a//b * *= Экспоненциальное И: Вычислить значение экспоненты (возвести в степень) с использованием операндов и присвоить значение левому операнду значение для левого операнда a&=b a=a&b 9b >>= Выполняет побитовый сдвиг вправо по операндам и присваивает значение левому операнду and assign value to left operand a <<= b a= a << b Example: Assignment Operators in Python
Python3
a
=
10
b
=
a
print
(b)
b
+
=
a
print
(b)
b
-
=
a
print
(b)
b
*
=
a
print
(b)
b <<
=
a
print
(b)
10
20
10
100
102400
Операторы идентификации равно Истинно, если операнды идентичны
не является True, если операнды не идентичны
Пример: Оператор идентификации Python3
=
111117
111111111111111111111111111111111111111111111111111111ЕРС c
=
a
печать
(a
is
not
b)
print
(a
is
c)
True
True
Операторы принадлежности в Истинно, если значение найдено в последовательности
Не в True if, если значение не обнаружено в последовательности
Пример: Членство Оператор Python3
X
1111111111111111111111111111111111111111111111111111111111ЕС 20 Список
=
[
10
,
20
,
30
,
40
,
,
40
,
,
40
, 010 50
]
if
(x
not
in
list
):
print
(
"x is NOT present in given Список "
)
ELS
:
Печать
(
" x присутствует в данном списке "
)
)
0003 if
(y
in
list
):
print
(
"y is present in given list"
)
else
:
Печать
(
"y не присутствует в данном списке"
)
x не присутствует в данном списке.
y присутствует в данном списке
Приоритет и ассоциативность операторов
Пример: приоритет оператора
Python3
expr
=
10
+
20
*
30
print
(expr)
name
=
"Alex «
Возраст
=
0
IF
Имя
=
=
" Алекс "
или
Название
" Alex "
или
. 0011
=
=
"John"
и
Возраст>
=
2
:
Печать
(
"Hello! Hello!»
else
:
print
(
"Good Bye!!"
)
610
Привет! Добро пожаловать.
Ассоциативность операторов Python3
print
(
100
/
10
*
10
)
print
(
5
-
2
+
3
)
print
(
5
-
(
2
+
3
))
print
(
2
*
*
3
*
*
2
)
100,0
6
0
512
(i)
Деление с плавающей запятой: >>>5/5
1,0
>>>10/2
5,0
>>>-10/2
-5,0
>>>20.0/2
10.0
(ii)
Целочисленное деление (этажное деление): >>>5//5
1
>>>3//2
1
>>>10//3
3
Python3
Печать
(
5
/
/
2
)
(
110)
(
110)
(
110)
(
110) .
2
)
2
-3
Python3
print
(
5. 0
/
2
)
print
(
-
5.0
/
2
)
2,5
-2.5
Python3
print
(
5
/
/
2
)
print
(
-
5
/
/
2
)
Печать
(
5. 0
/
/
2
)
ПЕЧАТЬ
(
-
5.010
(
-
7.010
.0011
/
/
2
)
2
-3
2.0
-3.0
Он просто позволяет проверить условие в однострочный заменяет многострочный if-else, что делает код компактным.
[on_true] if [expression] else [on_false]
Python
a, b
=
10
,
20
мин
=
a
если1 a < b
else
b
print
(
min
)
10
Python
33333333499 49999999999999999999999999999999999999999999999090 a, b
=
10
,
20
Печать
((B, A) [A
Печать
({
True
: A,
False
: B
: B
: B
: B
: B
: B
: B
: B. } [a
Печать
(
Lambda
: B,
Lambda
: a) [A
10
10
10
Python
a, b
=
10
,
20
print
(
"Оба a и b равны"
if
a
=
=
b
b
больше, чем 9 "a" 9
1
if
a > b
else
"b is greater than a"
)
Python
а, б
=
10
,
20
=
б:
if
a > b:
print
(
"a is greater than b"
)
else
:
print
(
"B больше, чем A"
)
else
:
Печать
(
"Оба A и B равны"
. 0011
)
Python3
a
=
5
b
=
7
Печать
(A,
" - это больше"
)
IF
(A> B)
ELS )
7 больше
Важные моменты: