# 向量化函数 自定义的 `sinc` 函数: In [1]: ```py import numpy as np def sinc(x): if x == 0.0: return 1.0 else: w = np.pi * x return np.sin(w) / w ``` 作用于单个数值: In [2]: ```py sinc(0.0) ``` Out[2]: ```py 1.0 ``` In [3]: ```py sinc(3.0) ``` Out[3]: ```py 3.8981718325193755e-17 ``` 但这个函数不能作用于数组: In [4]: ```py x = np.array([1,2,3]) sinc(x) ``` ```py --------------------------------------------------------------------------- ValueError Traceback (most recent call last) in () 1 x = np.array([1,2,3]) ----> 2 sinc(x) in sinc(x) 2 3 def sinc(x): ----> 4 if x == 0.0: 5 return 1.0 6 else: ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all() ``` 可以使用 `numpy` 的 `vectorize` 将函数 `sinc` 向量化,产生一个新的函数: In [5]: ```py vsinc = np.vectorize(sinc) vsinc(x) ``` Out[5]: ```py array([ 3.89817183e-17, -3.89817183e-17, 3.89817183e-17]) ``` 其作用是为 `x` 中的每一个值调用 `sinc` 函数: In [6]: ```py import matplotlib.pyplot as plt %matplotlib inline x = np.linspace(-5,5,101) plt.plot(x, vsinc(x)) ``` Out[6]: ```py [] ``` ![](data:image/png;base64,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) 因为这样的用法涉及大量的函数调用,因此,向量化函数的效率并不高。