python回调函数能作什么?

2022年01月14日 阅读数:1
这篇文章主要向大家介绍python回调函数能作什么?,主要内容包括基础应用、实用技巧、原理机制等方面,希望对大家有所帮助。

回调函数在各类编程函数中都是比较常见的,回调函数的出现主要是为了下降函数之间调用的耦合性,从而实现解耦。python

简单来讲,若是一个函数能够做为被传递就称这个函数为回调函数。好比:func1(func2()),那么func2就是回调函数。此时,只须要知道func2这个函数的功能是什么,在执行func1时调用func2就能够,无须关心func2的实现过程是什么。数据库

file

【阅读全文】编程

def func1(func2):
    func2()

def func2():
    print('我是func2函数')

func1(func2)

如此,像上面这样执行就能够完成一个简单的回调函数的使用。函数

经过这样的使用还能够实现一些稍微复杂的回调。指针

def func(func3,func4):
    print(func3() + func4())

def func3():
    return 5

def func4():
    return 3

func(func3,func4)

除了上面的使用实例之外,回调函数还可使用带参数的传递形式。code

def ser1(a):
    return a * 100

def ser2(b):
    return b * 20

def ser(ser1,a,ser2,b):
    print(ser1(a) + ser2(b))

ser(ser1,1,ser2,1)

在执行调用ser(ser1,a,ser2,b)时,其中a对应的是ser1回调函数的参数。b对应的是ser2回调函数的参数,这样就实现携带参数的回调函数被调用的状况。blog

还有一种携带多个参数的使用状况,写法也很nice。token

def exec(fn,args,callback):
    result = fn(*args)
    callback(result)

def add(a,b):
    return a + b

def show(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格式文件?