gpt4 book ai didi

python - numpy.product 与 numpy.prod 与 ndarray.prod

转载 作者:太空狗 更新时间:2023-10-29 21:36:00 26 4
gpt4 key购买 nike

我正在阅读 Numpy 文档,似乎函数 np.prod(...)np.product(...)ndarray 方法 a.prod(...) 都是等价的。

在样式/可读性和性能方面是否有首选版本可供使用?是否存在不同版本更可取的不同情况?如果不是,为什么会有三种独立但非常相似的方法来执行相同的操作?

最佳答案

从今天的 master 分支 (1.15.0) 开始,np.product 仅使用 np.prod,最终可能会被弃用。参见 MAINT: Remove duplicate implementation for aliased functions. #10653 .

np.prodndarray.prod 最终都调用了 umath.multiply.reduce,所以它们之间真的没有区别,除此之外,除了 NumPy 数组之外,自由函数还可以接受数组 类型(如 Python 列表)。

在此之前,就像在 NumPy 1.14.2 中一样,文档声称 np.productnp.prod 是相同的,但是由于重复存在错误Parag 提到的实现。即来自 #10651 的 Eric Weiser 示例:

>>> class CanProd(object):
def prod(self, axis, dtype, out): return "prod"
>>> np.product(CanProd())
<__main__.CanProd object at 0x0000023BAF7B29E8>
>>> np.prod(CanProd())
'prod'

简而言之,现在它们是一样的,并且更喜欢 np.prod 而不是 np.product 因为后者是一个可能被弃用的别名。

关于python - numpy.product 与 numpy.prod 与 ndarray.prod,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49863633/

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