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

XOR в Python известен как «exclusive or» — это побитовый оператор, который возвращает 1, когда любой из операндов равен 1, но оба не равны 1 и оба не равны 0.

Как XOR работает в Python?

Exclusive or устанавливает входные биты в 1, если один из аналогичных битов в двух операндах, но не оба, равен 1.

Пример 1: как использовать XOR в Python

Используйте оператор XOR ^ между двумя значениями, чтобы выполнить побитовое исключающее или для их двоичных представлений. Например, при использовании между двумя целыми числами оператор XOR возвращает целое число.

Выход

Мы использовали оператор XOR между двумя целыми числами. При использовании между двумя целыми числами оператор XOR возвращает целое число.

Пример 2: выполнение XOR для двух логических значений

При выполнении XOR для двух логических значений True рассматривается как 1, а False — как 0. Таким образом, XOR между двумя логическими значениями возвращает логическое значение.

Выход

Давайте сравним два ложных значения.

Выход

Давайте сравним два истинных значения.

Выход

Из приведенного выше примера кода видно, что если сравниваются два значения True или False, он возвращает False, но если сравниваются два разных значения, он возвращает True.

Пример 3: замена двух целых чисел с помощью XOR без временной переменной

В Python вы можете использовать оператор XOR(^) для замены двух целых чисел без использования временной переменной. Оператор XOR возвращает число, которое является результатом двоичной операции «исключающее или» над операндами.

Оператор «exclusive or» возвращает значение True, если ровно один из операндов имеет значение True. Если оба операнда имеют значение True или оба имеют значение False, он возвращает False.

Выход

Пример 4: использование XOR с функцией bin()

Выход

Давайте посмотрим, как поменять местами целые числа без временной переменной с помощью XOR.

Выход

В чем разница между XOR и OR?

Основное различие между операторами XOR и OR заключается в том, что XOR возвращает True, если хотя бы один из операндов имеет значение True, тогда как OR возвращает True, если хотя бы один из операндов имеет значение True.

Второе отличие состоит в том, что XOR в Питон — исключающий оператор, а OR — включающий оператор.

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

Автор статей и разработчик, делюсь знаниями.

Программирование на Python