gpt4 book ai didi

python - np.all() 没有被执行

转载 作者:太空宇宙 更新时间:2023-11-04 09:43:57 26 4
gpt4 key购买 nike

我写了一个脚本:

import numpy as np
a=[0,0,0]
if np.all(a==0):
print('All are zeros!')

但是没有打印出来。 np.all(a==0) 不应该评估为 True 因为 a[] 中的所有元素都是 0 吗?

最佳答案

为了避免将列表a显式转换为numpy.ndarray,可以直接调用numpy的比较运算符:

np.all(np.equals(a, 0))

但是,如果您的数据已经是 Python 列表,只需使用 Python 的 all() 即可获得相同的结果,所用时间仅为 numpy 计算时间的一小部分所有():

In [1]: import random

In [2]: import numpy as np

In [3]: a = [random.random() for _ in range(1000000)]

In [4]: %timeit all(x == 0 for x in a)
615 ns ± 21.8 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)

In [5]: %timeit np.all(np.equal(a, 0))
24.2 ms ± 2.04 ms per loop (mean ± std. dev. of 7 runs, 10 loops each)

关于python - np.all() 没有被执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50519820/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com