回调函数在各种编程函数中都是比较常见的。回调函数的出现主要是为了降低函数间调用之间的耦合度,从而达到解耦。简单来说,如果一个函数可以作为函数传递,那么它就被称为回调函数。例如:func1(func2()),那么func2就是回调函数。此时你只需要知道func2的功能是什么,在func1执行的时候调用func2就可以了,不需要关心func2的实现过程。【阅读全文】deffunc1(func2):func2()deffunc2():print('我是func2函数')func1(func2)是这样的,一个简单的回调函数的使用可以通过执行来完成像上面一样。通过这样的用法也可以实现一些稍微复杂一点的回调。deffunc(func3,func4):print(func3()+func4())deffunc3():return5deffunc4():return3func(func3,func4)除了上面的用法例子,回调函数还可以使用参数形式的传输。defser1(a):返回a*100defser2(b):返回b*20defser(ser1,a,ser2,b):print(ser1(a)+ser2(b))ser(ser1,1,ser2,1)调用ser(ser1,a,ser2,b)时,其中a对应ser1回调函数的参数。b对应ser2回调函数的参数,这样携带参数的回调函数就会被调用。还有一个携带多个参数的用例,写法也很好看。defexec(fn,args,callback):result=fn(*args)callback(result)defadd(a,b):returna+bdefshow(result):print("结果是:",result)exec(当add,(10,4),show)执行exec(add,(10,4),show)时,add作为第一个回调函数被执行。然后,将add函数的返回结果作为第二个回调函数的参数调用show回调函数。最后,用更专业的术语来理解,回调函数是通过函数指针调用的函数。如果你把一个函数指针(地址)作为参数传递给另一个函数,当这个指针被用来调用它所指向的函数时,我们就说这是一个回调函数。【往期精选】解决pyinstaller打包过程中无法加载外部资源的问题...pyqt5做了一个二维码生成器,已经打包成exe可执行程序...如何在上面实现一个数据管理系统控制台(包括MYSQL数据库的增删改查)自制文档格式转换器,支持.txt/.xlsx/.csv格式转换...PyPDF2如何实现根据PDF页码提取和将其保存为PDF文件?
