我们都知道,函数的返回值通常是 int , str , list , dict 等等。
其实,函数的返回值也可以是函数。
大家都知道,函数名是一个指向该函数的变量:
输出fi如下:
说明函数名是指向该函数的变量,同样我们将函数赋值给一个变量时,该变量也就指向了该函数。
那函数返回函数有什么作用呢?可以“延迟计算”,如下:
calc_prod()函数返回函数名f,即返回一个指向f()函数的变量,则执行calc_prod()函数时,不会立刻计算出结果,
需要在用一个变量接受返回的函数后执行此函数才能计算结果,即达到了“延迟计算”的结果。