Python------回调函数

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/D_iRe_Wol_F/article/details/83090967

个人理解

  1. 其实本质上就是一种调用。
  2. 表现是把一个函数当做一个参数调用。
  3. 目前理解到的有主函数,中间函数,回调函数三个部分组成。
  4. 与普通调用不同的是,在执行过程中,是先执行中间函数中的内容,再执行的各个回调函数。

自己根据网上的一些代码案例,进行理解.

callback_demo.py

from even import *
#中间函数
#接受一个生成偶数的函数作为参数
#返回一个奇数
def getOddNumber(k, getEvenNumber):
    k=k+1
    print("k:",k)
    print("结果返回给getOddNumber")
    return 1 + getEvenNumber(k)
    
#起始函数,这里是程序的主函数
def main():    
    print("调用main()...")
    k = 1
    #当需要生成一个2k+1形式的奇数时
    i = getOddNumber(k, double)
    print("i:",i)
    #当需要一个4k+1形式的奇数时
    i = getOddNumber(k, quadruple)
    print("i:",i)
    #当需要一个8k+1形式的奇数时
    i = getOddNumber(k, lambda x: x * 8)
    print("i:",i)
    
if __name__ == "__main__":
    print("程序入口...")
    main()

even.py

#回调函数1
#生成一个2k形式的偶数
def double(x):
	print("double()被调用")
	return x * 2
#回调函数2
#生成一个4k形式的偶数
def quadruple(x):
	print("quadruple()被调用")
	return x * 4

res1
res2

猜你喜欢

转载自blog.csdn.net/D_iRe_Wol_F/article/details/83090967
今日推荐