二、 ufunc 函数

  1. ufunc 函数是对数组的每个元素进行运算的函数。numpy很多内置的ufunc函数使用C语言实现的,计算速度非常快。

  2. 基本上所有的ufunc函数可以指定一个out参数来保存计算结果数组,并返回out数组。同时如果未指定out参数,则创建新的数组来保存计算结果。

    • 如果你指定了out参数,则要求out数组与计算结果兼容。即:数组的尺寸要严格匹配,并且数组的dtype要匹配。 ufunc_out
  3. numpy的某些ufunc函数,如numpy.sin(),支持计算单个数值。但是在单个数值的计算速度上,pythonmath.sin()要快得多。两个原因:

    • numpy.sin()为了同时支持数组和单个数值运算,其C语言的内部实现要比math.sin()复杂
    • 单个数值的计算上:numpy.sin()返回的是numpy.float64类型,而math.sin()返回的是python的标准float类型