一尘不染

numpy函数中参数'out'的实用程序

algorithm

out参数在某些numpy函数(例如cumsumcumprod或其他数学函数)中的用途是什么?

如果结果很大,使用该out参数来改善计算时间或内存效率是否有帮助?

该线程提供了有关 如何 使用它的一些信息。但是我想知道什么 时候 应该使用它,其好处是什么?


阅读 837

收藏
2020-07-28

共1个答案

一尘不染

带有out参数的函数将创建新对象。这通常是您从函数中所期望的:提供一些数组,并使用转换后的数据获得一个新数组。

但是,假设您想连续调用该函数数千次。每个函数调用都会创建一个新的数组,这当然会花费很多时间。

在这种情况下,您可能要创建一个输出数组,out然后让该函数用输出填充该数组。处理完数据后,您可以重用out并让函数覆盖其值。这样,您将不会分配或释放任何内存,从而可以节省大量时间。

2020-07-28