2. 四则运算

  1. numpy提供的四则运算如下,这些四则运算同时提供了函数形式以及表达式形式:

    • 加法:表达式形式y=x1+x2,使用ufunc函数的形式:numpy.add(x1,x2[,out=y])

    • 减法:表达式形式y=x1-x2,使用ufunc函数的形式:numpy.subtract(x1,x2[,out=y])

    • 乘法:表达式形式y=x1*x2,使用ufunc函数的形式:numpy.multiply(x1,x2[,out=y])

    • 真除法:表达式形式y=x1/x2,使用ufunc函数的形式:numpy.true_divide(x1,x2[,out=y])

      • python3 中,numpy.divide(x1,x2[,out=y])也是真除法
    • 取整除法:表达式形式y=x1//x2,使用ufunc函数的形式:numpy.floor_divide(x1,x2[,out=y])

    • 取反:表达式形式y=-x,使用ufunc函数的形式:numpy.negative(x[,out=y])

    • 乘方:表达式形式y=x1**x2,使用ufunc函数的形式:numpy.power(x1,x2[,out=y])

    • 取余数:表达式形式y=x1%x2,使用ufunc函数的形式:numpy.remainder(x1,x2[,out=y])

    arithmetic

  2. 对于 np.add(a,b,a) 这种可以使用a+=b来表示。这些四则运算都可以采用这种方式。

  3. 当表达式很复杂时,如果同时数组很大,则会因为产生大量的中间结果而降低程序的运算速度。如: x=a*b+c等价于:

    1. t=a*b
    2. x=t+c
    3. del t

    我们可以使用:

    1. x=a*b
    2. x+=c

    从而减少了一次内存分配。