Рубрики
Без рубрики

Как работает оператор “И” в Python | Логический и побитовый

Операторы в основном используются для выполнения операций по данным для манипулирования. Есть различные виды операторов I.E. Логические операторы, побитовые

Автор оригинала: Pankaj Kumar.

Python и оператор

Операторы в основном используются для выполнения операций по данным для манипулирования. Есть различные виды операторов I.E. Логические операторы, побитовые операторы, арифметические операторы и т. Д.

В Python есть два вида и операторы:

  1. Логично и оператор
  2. Побитовый и оператор

Логично и оператор

Логический и оператор работает с логическими значениями и результатами в истинные или ложные на основе условия. и Оператор возвращает True, когда оба операнда верны, иначе он возвращает false.

Синтаксис:

Operand1 и Operand2.

Пример :

num1 = int(input('Enter first number:\n'))
num2 = int(input('Enter second number:\n'))
if num1 > num2 and num1 < 10:
    print('True')
elif num1 < 0 and num2 < 0:
    print('Both the numbers are negative.')
else:
    print('False')

Выход :

Введите первый номер: 9 Введите второй номер: 5 TRUE

Логическая перегрузка оператора

Логические операторы Python работают на логических ценностях. По умолчанию объектно-логическое значение является Правда Отказ Если объект это Нет или Ложь Тогда логическое значение – Ложь Отказ Мы можем предоставить __bool __ () Реализация для изменения логических значений по умолчанию объекта.

class Data:

    def __init__(self, i):
        self.id = i

    def __bool__(self):
        return self.id % 2 == 0


d1 = Data(6)
d2 = Data(4)

print(bool(Data(3)) and bool(Data(4)))  # False

Вышеуказанный фрагмент кода будет печатать False, потому что данные (3) логическое значение логично.

Если мы удалим реализацию функции __Bool __ (), оба объекта на объектах логического значения будут верны, и она будет печатать true.

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

Битовые операторы работают на битах. Он возвращает 1, когда обе биты операндов – это еще 1, что он возвращает 0 (ноль).

Синтаксис:

Operand1 & Operand2.

A (двоичный)

B (двоичный)

A & & (десятичный)

Пример :

a = 6
b = 4

c = a & b

print(c)

Выход :

4

Побитопроизводство оператора

Существуют различные определенные методы для перегрузки побитовых операторов в Python.

__ и __ (я, другие) &
__ __ (Я, Другое) |
__кс __ (я, другой) ^
__invert __ (Я) ~
__lshift __ (Self, Другое) <<.
__rshift __ (Self, Другое) >>
class Operate(): 
    def __init__(self, x): 
        self.x = x 
          
    def __and__(self, res): 
        print("Bitwise AND operator overloading Example") 
        if isinstance(res, Operate): 
            return self.x & res.x 
        else: 
            raise ValueError("Must belong to Operate Class") 
    
          

if __name__ == "__main__": 
    a = Operate(6) 
    b = Operate(4) 
    print(a&b) 

Выход :

Пример побитового и оператора перегрузка 4

Порядок оценки логических операторов

Выполнение операндов через операторы происходят из слева направо Отказ

Пример :

def evaluate(n): 
    print("Function called for operand:", n) 
    return True if n > 0 else False
      
x = evaluate 
y = evaluate 
z = evaluate
  
if x(-1) or y(5) and z(10): 
    print("One of the numbers is positive.") 

Выход :

Функция вызывается для операнда: 5 Функция вызывается для операнда: 10 Один из чисел положительный.

использованная литература