4. 逻辑运算

  1. 由于python中的布尔运算使用and/or/not关键字,因此它们无法被重载。numpy提供的数组布尔运算只能通过ufunc函数进行,这些函数以logical_开头。进行逻辑运算时,对于数值零视作False;对数值非零视作True。运算结果也是一个布尔类型的数组:

    • 与:ufunc函数的形式:numpy.logical_and(x1,x2[,out=y])
    • 或:ufunc函数的形式:numpy.logical_or(x1,x2[,out=y])
    • 否定:ufunc函数的形式:numpy.logical_not(x[,out=y])
    • 异或:ufunc函数的形式:numpy.logical_xor(x1,x2[,out=y])

    logical

  2. 对于数组xnumpy定义了下面的操作:

    • numpy.any(x):只要数组中有一个元素值为True(如果数值类型,则为非零),则结果就返回True;否则返回False
    • numpy.all(x):只有数组中所有元素都为True(如果数值类型,则为非零),则结果才返回True;否则返回False any_all