首页 > 编程语言 >【Python】回调函数

【Python】回调函数

时间:2023-01-07 18:12:13浏览次数:55  
标签:__ return 函数 Python 回调 def logs

回调函数

参考地址:https://blog.csdn.net/weixin_41605937/article/details/120248917

  回调函数就是一个通过函数名调用的函数,这个被传入的、后又被调用的函数就称为回调函数(callback function)

  把回调函数传入库函数的动作,称为登记回调函数(to register a callback function)

 

示例:

# coding:utf-8
from loguru import logger as logs

def callbackTwo(x):
    """回调函数 2倍"""
    return x*2

def callbackTen(x):
    """回调函数 10倍"""
    return x*10

def run(y, runCallback):
    """中间函数 +1"""
    return 1 + runCallback(y)

def main(i):
    """主函数"""
    # 通过登记不同的回调函数,来决定、改变中间函数的行为
    j = run(i, callbackTwo)
    logs.debug("两倍数+1={}".format(j))
    j = run(i, callbackTen)
    logs.debug("十倍数+1={}".format(j))


if __name__ == "__main__":
    i = 4
    main(i)

 

执行结果:

 

 

示例:异步处理调用回调

# coding:utf-8
from loguru import logger as logs

def callbackTwo(x):
    """回调函数 2倍"""
    return x*2

def run(y):
    """中间函数 +1"""
    return 1 + y

def asyncFuncCallBack(func, args, callBack):
    """
    异步处理相关的回调函数

    :param func: 需要处理的函数,即中间函数
    :param args:参数
    :param callBack:函数处理完成后需要执行的动作
    :return:
    """
    re = func(args)
    return callBack(re)


if __name__ == "__main__":
    i = 4
    j = asyncFuncCallBack(run, i, callbackTwo)
    logs.debug(j)

 

执行结果

 

标签:__,return,函数,Python,回调,def,logs
From: https://www.cnblogs.com/phoenixy/p/17029592.html

相关文章