作者:麦叔叔
来源:麦编程大叔
此问题是应一位老粉丝的请求而发出的。 3 分钟简单解释什么是回调函数。
定义
将函数指针(地址)作为参数传递给另一个函数。如果这个指针用来调用所指向的函数,那么它就是一个回调函数。回调函数不是由函数的实现者直接调用,而是由另一方在发生特定事件或条件时调用并响应该事件或条件。
“上面模糊的概念可以用一句话概括如下。”
回调函数是作为参数传递的函数。
举栗子
使用三行代码创建计算器函数。
def Calculator(v1,v2,fn): result=fn(v1,v2) return result 但是,此计算器没有功能,无法计算1+1。
接下来,创建一个对两个数字求和的加法函数。
def计算器(v1,v2,fn): result=fn(v1,v2) return resultdef add(v1,v2): return v1 + v2 # 调用计算器并计算1+1 print(calculator(1,1 ,add) )输出结果:
2上面代码中的加法函数称为计算器回调函数。
是不是还是很简单呢?
那么为什么不编写减法、乘法和除法的回调函数以使其更令人印象深刻呢?
回调函数和递归函数的区别
回调函数是作为参数传递给函数并在函数内调用的“回调函数”。
递归函数在函数内调用自身。
回调函数和高阶函数的区别
你还记得上一期的高阶函数吗?
检查高阶函数的定义,
Python中的高阶函数实际上是一个接受函数作为参数或返回函数作为结果的函数。
定义回调函数
回调函数是作为参数传递的函数。
你是否曾经感到神秘?
def计算器(v1,v2,fn): result=fn(v1,v2) return resultdef add(v1,v2): return v1 + v2 在上面的代码中,
计算器是一个高阶函数,add是一个回调函数。
让我们仔细看看吧~
最后
感谢各位粉丝一直以来的关注。今天的文章有帮助吗?
原创文章,作者:小条,如若转载,请注明出处:https://www.sudun.com/ask/87183.html