python比较两个数组是否相等_比较两个numpy数组是否相等,元素方式

本文通过实验对比了三种NumPy数组比较方法:(A==B).all()、np.array_equal(A,B) 和 np.array_equiv(A,B) 的性能。结果显示,在相同条件下,np.array_equal 方法最快。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

让我们用衡量性能以下一段代码。

import numpy as np

import time

exec_time0 = []

exec_time1 = []

exec_time2 = []

sizeOfArray = 5000

numOfIterations = 200

for i in xrange(numOfIterations):

A = np.random.randint(0,255,(sizeOfArray,sizeOfArray))

B = np.random.randint(0,255,(sizeOfArray,sizeOfArray))

a = time.clock()

res = (A==B).all()

b = time.clock()

exec_time0.append(b - a)

a = time.clock()

res = np.array_equal(A,B)

b = time.clock()

exec_time1.append(b - a)

a = time.clock()

res = np.array_equiv(A,B)

b = time.clock()

exec_time2.append(b - a)

print 'Method: (A==B).all(), ', np.mean(exec_time0)

print 'Method: np.array_equal(A,B),', np.mean(exec_time1)

print 'Method: np.array_equiv(A,B),', np.mean(exec_time2)

输出

Method: (A==B).all(), 0.03031857

Method: np.array_equal(A,B), 0.030025185

Method: np.array_equiv(A,B), 0.030141515

根据以上的结果,所述方法numpy的似乎是比==操作者的组合和所有()方法和通过快比较numpy方法最快似乎是numpy.array_equal方法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值