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

Содержание
  1. Логические операторы в Python
  2. Логический оператор AND в Python
  3. Логический оператор OR
  4. Оператор NOT
  5. Операторы оцениваются слева направо
  6. Работают ли с любым настраиваемым объектом?
  7. Логические операторы Python
  8. Блок-схема
  9. Логический оператор И в Python
  10. Пример:
  11. Логический оператор ИЛИ в Python
  12. Пример:
  13. Логический оператор НЕ в Python
  14. Пример:
  15. Операторы Python
  16. Введение в операторы Python
  17. Арифметические операторы Python
  18. Сложение (+)
  19. Вычитание (-)
  20. Умножение (*)
  21. Деление (/)
  22. Возведение в степень (**)
  23. Деление без остатка (//)
  24. Деление по модулю (остаток от деления) (%)
  25. Операторы сравнения
  26. Меньше (<)
  27. Больше (>)
  28. Меньше или равно (<=)
  29. Больше или равно (>=)
  30. Равно (==)
  31. Не равно (!=)
  32. Операторы присваивания
  33. Присваивание (=)
  34. Сложение и присваивание (+=)
  35. Вычитание и присваивание (-=)
  36. Деление и присваивание (/=)
  37. Умножение и присваивание (*=)
  38. Деление по модулю и присваивание (%=)
  39. Возведение в степень и присваивание (**=)
  40. Деление с остатком и присваивание (//=)
  41. Логические операторы Python
  42. И (and)
  43. Или (or)
  44. Не (not)
  45. Операторы принадлежности
  46. В (in)
  47. Нет в (not in)
  48. Операторы тождественности
  49. Это (is)
  50. Это не (is not)
  51. Битовые операторы Python
  52. Бинарное И (&)
  53. Бинарное ИЛИ (|)
  54. Бинарное ИЛИ НЕТ (^)
  55. Инвертирующий оператор (~)
  56. Бинарный сдвиг влево (<<)
  57. Бинарный сдвиг вправо (>>)
  58. Выводы

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

Логические операторы в Python позволяют нам выполнять логические операции AND, OR, и NOT между логическими значениями. В этой статье мы более подробно рассмотрим выполнение логического оператора.

В Python есть три логических оператора:

and Логический оператор AND flag = True и True = True
or Логический оператор OR flag = False или True = True
not Логический оператор NOT flag = not (False) = True

Логический оператор AND в Python

Вот простой пример логического оператора and.

x = 10 y = 20 if x > 0 and y > 0: print('Both x and y are positive numbers')

Вывод: и x, и y – положительные числа.

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

if (x > 0) and (y > 0): print('Both x and y are positive numbers')

В Python каждая переменная или объект имеет логическое значение.

if x and y: print('Both x and y have boolean value as True')

Вывод: И x, и y имеют логическое значение True, потому что функция len() ‘x’ и ‘y’ вернет 2, т.е.> 0.

Давайте подтвердим приведенное выше утверждение, определив настраиваемый объект. Python использует функцию __bool __() для получения логического значения объекта.

class Data: def __init__(self, i): self.id = i def __bool__(self): print('Data bool method called') return True if self.id > 0 else False d1 = Data(-10) d2 = Data(10) if d1 and d2: print('Both d1 and d2 ids are positive') else: print('Both d1 and d2 ids are not positive')
Data bool method called At least one of d1 and d2 ids is negative

Обратите внимание, что функция __bool __() вызывается только один раз, что подтверждается выводом оператора печати.

На диаграмме ниже изображена логическая блок-схема и схема работы.

Логическая блок-схема в Python

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

Давайте посмотрим на простой пример логического оператора OR.

x = 10 y = 20 if x > 0 or y > 0: print('At least one of x and y is positive number')

Выход: по крайней мере одно из x и y является положительным числом.

Давайте подтвердим это простым фрагментом кода. Мы будем повторно использовать класс данных, определенный ранее.

d1 = Data(10) d2 = Data(20) # The expressions are evaluated until it's required if d1 or d2: print('At least one of d1 and d2 id is a positive number') else: print('Both d1 and d2 id are negative')
Data bool method called At least one of d1 and d2 id is a positive number

Обратите внимание, что метод __bool __() вызывается только один раз и, поскольку он оценивается как True, дальнейшие выражения не оцениваются.

Читайте также:  Стрелка вниз символ html

Давайте запустим еще один пример, в котором оба логических значения объекта данных возвращают False.

d1 = Data(-10) d2 = Data(-20) if d1 or d2: print('At least one of d1 and d2 id is a positive number') else: print('Both d1 and d2 id are negative')
Data bool method called Data bool method called Both d1 and d2 id are negative

Наконец, на изображении ниже изображена блок-схема логического оператора или оператора.

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

Оператор NOT

Это очень простой оператор, работающий с одним логическим значением. Если логическое значение равно True, тогда оператор not вернет False и наоборот.

Давайте посмотрим на простой пример оператора «NOT».

a = 37 if not (a % 3 == 0 or a % 4 == 0): print('37 is not divisible by either 3 or 4')

Результат: 37 не делится ни на 3, ни на 4.

Логический оператор Not в Python

Операторы оцениваются слева направо

Давайте посмотрим на пример, где у нас есть несколько логических операторов. Мы не смешиваем разные типы операторов в Python, поэтому приоритет операторов не будет очевиден и будет легче объяснить результат.

Мы также переопределим функцию __bool __() для вывода значения «id».

def my_bool(data): print('Data bool method called, At least one of them have a positive id.')
Data bool method called, bool method called, bool method called, least one of them have a positive id.

Обратите внимание, что логическое значение сначала вычисляется для d1, тем самым подтверждая, что выполнение происходит слева направо.

Работают ли с любым настраиваемым объектом?

В Python каждый объект имеет логическое значение. Таким образом, логические операторы будут работать и с любыми настраиваемыми объектами. Однако мы можем реализовать функцию __bool __(), чтобы определить наши собственные правила для логического значения объекта.

Источник

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

Операторы Python — это слова, которые говорят интерпретатору Python выполнять определенные задачи. Логические операторы используются для объединения нескольких логических операторов.

В Python есть три логических оператора.

3 Логических Оператора Python

Блок-схема

На изображении ниже изображена блок-схема логических операторов.

Блок-Схема Логических Операторов

Логический оператор И в Python

Утверждение возвращается, чтобы быть истинным, если оба утверждения / условия верны.

Пример:

a=20 b=10 if a > 0 and b > 0 print("Both a and b are positive numbers.")

Вывод: и a, и b — положительные числа.

Логический оператор ИЛИ в Python

Утверждение возвращается истинным, когда любое из утверждений / условий истинно.

Пример:

a=20 b= -10 if a > 0 or b > 0 print("True")

Логический оператор НЕ в Python

Этот оператор работает с одним значением. Он меняет результат на противоположный, т. е. Если утверждение истинно, оператор not превратит утверждение в ложное и наоборот.

Пример:

В приведенном выше примере условие a % 4 or a > 0 оценивается как True. Но, поскольку мы использовали оператор not, он меняет результат, т.е. дает результат как False.

Источник

Операторы Python

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

Оператор в Python — это символ, который выполняет операцию над одним или несколькими операндами.
Операндом выступает переменная или значение, над которыми проводится операция.

Введение в операторы Python

Операторы Python бывают 7 типов:

  • Арифметические операторы
  • Операторы сравнения
  • Операторы присваивания
  • Логические операторы
  • Операторы принадлежности
  • Операторы тождественности
  • Битовые операторы
Читайте также:  Html код счетчик дней

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

Этот тип включает операторы для проведения базовых арифметических операций.

Сложение (+)

Складывает значение по обе стороны оператора.
Пример:

Вычитание (-)

Вычитает значение правой стороны из значения в левой.
Пример:

Умножение (*)

Перемножает значения с обеих сторон оператора.
Пример:

Деление (/)

Делит значение левой стороны на значение правой. Тип данных результата деления — число с плавающей точкой.
Пример:

Возведение в степень (**)

Возводит первое число в степень второго.
Пример:

Деление без остатка (//)

Выполняет деление и возвращает целочисленное значение частного, убирая цифры после десятичной точки.
Пример:

Деление по модулю (остаток от деления) (%)

Выполняет деление и возвращает значение остатка.
Пример:

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

Операторы сравнения в Python проводят сравнение операндов. Они сообщают, является ли один из них больше второго, меньше, равным или и то и то.

Меньше (<)

Этот оператор проверяет, является ли значение слева меньше, чем правое.
Пример:

Больше (>)

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

Меньше или равно (<=)

Проверяет, является ли левая часть меньше или равной правой.
Пример:

Больше или равно (>=)

Проверяет, является ли левая часть больше или равной правой.
Пример:

Равно (==)

Этот оператор проверяет, равно ли значение слева правому. 1 равна булевому True , а 2 (двойка) — нет. 0 равен False .
Пример:

Не равно (!=)

Проверяет, не равно ли значение слева правому. Оператор <> выполняет ту же задачу, но его убрали в Python 3.

Когда условие выполнено, возвращается True . В противном случае — False . Это возвращаемое значение можно использовать в последующих инструкциях и выражениях.
Пример:

>>> 1==True # Это вызывает SyntaxError 

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

Оператор присваивания присваивает значение переменной. Он может манипулировать значением до присваивания. Есть 8 операторов присваивания: 1 простой и 7 с использованием арифметических операторов.

Присваивание (=)

Присваивает значение справа левой части. Стоит обратить внимание, что == используется для сравнения, а = — для присваивания.
Пример:

Сложение и присваивание (+=)

Суммирует значение обеих сторон и присваивает его выражению слева. a += 10 — это то же самое, что и a = a + 10 .

То же касается и все остальных операторов присваивания.
Пример:

Вычитание и присваивание (-=)

Вычитает значение справа из левого и присваивает его выражению слева.
Пример:

Деление и присваивание (/=)

Делит значение слева на правое. Затем присваивает его выражению слева.
Пример:

Умножение и присваивание (*=)

Перемножает значения обеих сторон. Затем присваивает правое левому.
Пример:

Деление по модулю и присваивание (%=)

Выполняет деление по модулю для обеих частей. Результат присваивает левой части.
Пример:

Возведение в степень и присваивание (**=)

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

Деление с остатком и присваивание (//=)

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

Это один из важных операторов Python

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

Это союзы, которые позволяют объединять по несколько условий. В Python есть всего три оператора: and (и), or (или) и not (не).

Читайте также:  Discord python embed image

И (and)

Если условия с двух сторон оператора and истинны, тогда все выражение целиком считается истинным.
Пример:

Или (or)

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

Не (not)

Этот оператор инвертирует булевые значения выражения. True превращается в False и наоборот. В примере внизу булево значение 0 — False . Поэтому оно превращается в True .
Пример:

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

Эти операторы проверяют, является ли значение частью последовательности. Последовательность может быть списком, строкой или кортежем. Есть всего два таких оператора: in и not in .

В (in)

Проверяет, является ли значение членом последовательности. В этом примере видно, что строки fox нет в списке питомцев. Но cat — есть, поэтому она возвращает True . Также строка me является подстрокой disappointment . Поэтому она вернет True .
Пример:

>>> pets=['dog','cat', 'ferret'] >>> 'fox' in pets 

Нет в (not in)

Этот оператор проверяет, НЕ является ли значение членом последовательности.
Пример:

>>> 'pot' not in 'disappointment' 

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

Эти операторы проверяют, являются ли операнды одинаковыми (занимают ли они одну и ту же позицию в памяти).

Это (is)

Если операнды тождественны, то вернется True . В противном случае — False . Здесь 2 не является 20 , поэтому вернется False . Но ‘2’ — это то же самое, что и «2» . Разные кавычки не меняют сами объекты, поэтому вернется True .
Пример:

Это не (is not)

2 — это число, а ‘2’ — строка. Поэтому вернется True .
Пример:

Битовые операторы Python

Эти операторы работают над операндами бит за битом.

Бинарное И (&)

Проводит побитовую операцию and над двумя значением. Здесь бинарная 2 — это 10 , а 3 — 11 . Результатом побитового and является 10 — бинарная 2 . Побитовое and над 011 (3) и 100 (4) выдает результат 000 (0).
Пример:

Бинарное ИЛИ (|)

Проводит побитовую операцию or на двух значениях. Здесь or для 10 (2) и 11 (3) возвращает 11 (3).
Пример:

Бинарное ИЛИ НЕТ (^)

Проводит побитовую операцию xor (исключающее или) на двух значениях. Здесь результатом ИЛИ НЕ для 10 (2) и 11 (3) будет 01 (1).
Пример:

Инвертирующий оператор (~)

Он возвращает инвертированные двоичные числа. Другими словами, переворачивает биты. Битовая 2 — это 00000010 . Ее инвертированная версия — 11111101 . Это бинарная -3 . Поэтому результат -3 . Похожим образом ~1 равняется -2 .
Пример:

Еще раз, инвертированная -3 — это 2 .

Бинарный сдвиг влево (<<)

Он сдвигает значение левого операнда на позицию, которая указана справа. Так, бинарная 2 — это 10 . 2 сдвинет значение на две позиции влево и выйдет 1000 — это бинарная 8 .
Пример:

Бинарный сдвиг вправо (>>)

Сдвигает значение левого оператора на позицию, указанную справа. Так, бинарная 3 — это 11 . 3 >> 2 сдвинет значение на два положение вправо. Результат — 00 , то есть 0 . 3 >> 1 сдвинет на одну позицию вправо, а результатом будет 01 — бинарная 1 .
Пример:

Выводы

В этом уроке были рассмотрены все 7 типов операторов Python. Для каждого был предложен пример в IDE. Для понимания особенностей работы операторов нужно продолжать с ними работать, использовать в условных конструкциях и объединять.

Источник

Оцените статью