2 条题解
-
0
NUMPY042 题解:检查数组相等
题目
检查两个随机数组是否相等。
解题思路
使用
np.allclose()或np.array_equal()进行比较。代码
import numpy as np A = np.random.randint(0, 2, 5) B = np.random.randint(0, 2, 5) # 方法1:考虑容差 equal = np.allclose(A, B) print(equal) # 方法2:精确比较 equal = np.array_equal(A, B) print(equal)代码详解
np.allclose
np.allclose(A, B, rtol=1e-05, atol=1e-08)- 比较两个数组是否相等
- 考虑浮点数精度容差
- 公式:
|A - B| <= (atol + rtol * |B|)
np.array_equal
np.array_equal(A, B)- 精确比较
- 要求形状相同且所有元素相等
示例
A = np.array([1, 2, 3]) B = np.array([1, 2, 3]) print(np.allclose(A, B)) # True print(np.array_equal(A, B)) # True A = np.array([1.0, 2.0, 3.0]) B = np.array([1.0, 2.0, 3.0000001]) print(np.allclose(A, B)) # True(容差内) print(np.array_equal(A, B)) # False(不完全相等)核心知识点
np.allclose()—— 浮点数容差比较np.array_equal()—— 精确比较- rtol 和 atol 控制容差
- 1
信息
- ID
- 93
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- (无)
- 标签
- (无)
- 递交数
- 0
- 已通过
- 0
- 上传者