Функция invert
Функция invert выполняет побитовую инверсию (NOT) каждого элемента массива.
Первый параметр функции - входной массив целочисленных типов. Вторым параметром
можно передать массив для сохранения результата, третьим - управлять приведением типов.
Функция возвращает массив с инвертированными битами для каждого элемента.
Синтаксис
np.invert(x, [out], [where])
Пример
Давайте выполним побитовую инверсию для массива чисел от 0 до 4:
import numpy as np
arr = np.array([0, 1, 2, 3, 4])
res = np.invert(arr)
print(res)
Результат выполнения кода:
[-1 -2 -3 -4 -5]
Пример
Давайте проверим, что оператор ~ дает тот же результат, что и функция invert:
import numpy as np
arr = np.array([1, 2, 3])
res1 = np.invert(arr)
res2 = ~arr
print(res1)
print(res2)
Результат выполнения кода:
[-2 -3 -4]
[-2 -3 -4]
Пример
Давайте используем массив с отрицательными числами:
import numpy as np
arr = np.array([-1, -2, -3])
res = np.invert(arr)
print(res)
Результат выполнения кода:
[0 1 2]
Пример
Давайте выполним побитовую инверсию для двумерного массива:
import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6]])
res = np.invert(arr)
print(res)
Результат выполнения кода:
[[-2 -3 -4]
[-5 -6 -7]]
Пример
Давайте используем массив с типом данных без знака:
import numpy as np
arr = np.array([0, 1, 2, 3], dtype=np.uint8)
res = np.invert(arr)
print(res)
Результат выполнения кода:
[255 254 253 252]
Смотрите также
-
функцию
bitwise_and,
которая выполняет побитовое И -
функцию
bitwise_or,
которая выполняет побитовое ИЛИ -
функцию
bitwise_xor,
которая выполняет побитовое исключающее ИЛИ -
функцию
logical_not,
которая выполняет логическое отрицание