逻辑运算
大约 1 分钟PythonPythonNumPy
逻辑运算
逻辑运算用于数组元素的逐个比较和布尔运算。
一、逻辑
逻辑与
logical_and
:逻辑与运算,同时为 True
,结果才为 True
,否则为 False
。
import numpy as np
a = np.array([True, False, True, False])
b = np.array([True, True, False, False])
result = np.logical_and(a, b)
print(result)
[ True False False False]
逻辑或
np.logical_or
:逻辑或运算,只要有一个为 True
,结果就是 True
,否则为 False
。
import numpy as np
a = np.array([True, False, True, False])
b = np.array([True, True, False, False])
result = np.logical_or(a, b)
print(result)
[ True True True False]
逻辑非
np.logical_not
:对数组中的每个元素进行逻辑非运算。逻辑非运算会将 True
变为 False
,将 False
变为 True
。
import numpy as np
a = np.array([True, False, True, False])
result = np.logical_not(a)
print(result)
[False True False True]
异或
logical_xor
:对两个数组中的每个对应元素进行逻辑异或运算。在两个输入值不同的时候为 True
,否则为 False
。
import numpy as np
a = np.array([True, False, True, False])
b = np.array([True, True, False, False])
result = np.logical_xor(a, b)
print(result)
[False True True False]
二、比较
对两个数组中的每个对应元素进行大小比较。
等于/不等于
import numpy as np
x = np.array([1, 2, 3, 4])
y = np.array([2, 2, 2, 2])
# 等于
result1 = np.equal(x, y)
print(result1)
# 不等于
result2 = np.not_equal(x, y)
print(result2)
[False True False False]
[ True False True True]
大于/等于
import numpy as np
x = np.array([1, 2, 3, 4])
y = np.array([2, 2, 2, 2])
# 大于
result1 = np.greater(x, y)
print(result1)
# 大于等于
result2 = np.greater_equal(x, y)
print(result2)
[False False True True]
[False True True True]
小于/等于
import numpy as np
x = np.array([1, 2, 3, 4])
y = np.array([2, 2, 2, 2])
# 小于
result1 = np.less(x, y)
print(result1)
# 小于等于
result2 = np.less_equal(x, y)
print(result2)
[ True False False False]
[ True True False False]