You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Numpy检查数组内所有元素的值是否全部相等

Numpy判断数组所有元素是否完全一致的实现方法

实现方案

方案1:使用np.all()逐元素对比(性能最优,推荐)

直接将数组所有元素和第一个元素对比,判断是否全部相等:

# 通用写法
result = np.all(arr == arr[0])

如果数组中可能存在NaN值,需要兼容NaN相等判断的场景,使用:

result = np.allclose(arr, arr[0], equal_nan=True)

方案2:使用np.unique()去重后判断长度

对数组去重后判断去重结果的长度是否为1:

result = len(np.unique(arr)) == 1

示例验证

对应给出的测试用例,运行效果如下:

import numpy as np

# 测试用例1
array1 = np.array([1,1,1,1,1])
print(np.all(array1 == array1[0])) # 输出 True

# 测试用例2
array2 = np.array([1,0,1,0,1])
print(np.all(array2 == array2[0])) # 输出 False

补充说明

两种方案都不需要自定义函数,仅用Numpy原生API即可实现,同时支持一维、多维数组的判断:

  • 方案1的性能更高,尤其是大数组场景下,无需全量遍历完数组即可提前得到结果
  • 方案2写法更简洁,但需要全量遍历数组完成去重,适合小数组场景使用
  • 如果需要处理空数组的边界场景,可额外补充数组长度判断逻辑,按需返回对应结果

内容的提问来源于stack exchange,提问作者Conweezy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 07:39:01