РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
187 of 541 menu

Функция logical_xor

Функция logical_xor выполняет поэлементную операцию исключающее ИЛИ (XOR) над двумя массивами NumPy. Результатом является массив булевых значений, где элемент равен True, если соответствующие элементы входных массивов различаются (один равен True, а другой False), и False, если они одинаковы. Первым параметром функция принимает массив x1, вторым - массив x2, также доступны параметры out, where и dtype для управления выводом.

Синтаксис

np.logical_xor(x1, x2, out=None, where=True, dtype=None)

Пример

Давайте выполним операцию исключающее ИЛИ над двумя одномерными массивами булевых значений:

import numpy as np arr1 = np.array([True, True, False, False]) arr2 = np.array([True, False, True, False]) res = np.logical_xor(arr1, arr2) print(res)

Результат выполнения кода:

[False True True False]

Пример

Функция также работает с числовыми массивами, где ноль интерпретируется как False, а любое ненулевое значение как True:

import numpy as np arr1 = np.array([0, 1, 2, 0]) arr2 = np.array([0, 0, 3, 4]) res = np.logical_xor(arr1, arr2) print(res)

Результат выполнения кода:

[False True True True]

Пример

Исключающее ИЛИ можно применять к многомерным массивам. Операция выполняется поэлементно:

import numpy as np arr1 = np.array([[True, False], [True, False]]) arr2 = np.array([[True, True], [False, False]]) res = np.logical_xor(arr1, arr2) print(res)

Результат выполнения кода:

[[False True] [ True False]]

Пример

Для работы с массивами разных размеров используется механизм широковещания (broadcasting):

import numpy as np arr1 = np.array([[True, False, True], [False, True, False]]) arr2 = np.array([False, True, False]) res = np.logical_xor(arr1, arr2) print(res)

Результат выполнения кода:

[[ True True True] [False False False]]

Пример

С помощью параметра out можно указать массив для сохранения результата:

import numpy as np arr1 = np.array([True, False, True]) arr2 = np.array([False, False, True]) out_arr = np.empty(3, dtype=bool) np.logical_xor(arr1, arr2, out=out_arr) print(out_arr)

Результат выполнения кода:

[ True False False]

Смотрите также

  • функцию logical_and,
    которая выполняет поэлементное логическое И
  • функцию logical_or,
    которая выполняет поэлементное логическое ИЛИ
  • функцию logical_not,
    которая выполняет поэлементное логическое НЕ
  • функцию bitwise_xor,
    которая выполняет побитовое исключающее ИЛИ
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить