博客
关于我
回调函数的理解
阅读量:662 次
发布时间:2019-03-15

本文共 753 字,大约阅读时间需要 2 分钟。

回调函数的概念

在编程中,回调函数是一种常见的设计模式。主函数会将回调函数作为参数传递,这意味着主函数并不知道具体会调用哪个函数。这种设计方式为程序提供了高度的灵活性。

以下是一个例子:

  • eating和clean是回调函数,它们会根据主函数task的调用来执行相应的操作。
  • 在传入回调函数前,主函数task并不知道将要调用的函数是clean还是eating。

普通函数调用与回调函数调用对比

普通函数调用时,主函数在创建时就已经确定要调用的函数名。例如:

def task(time):clean(time)eating(time)for i in range(1, 5):task(i)

而使用回调函数作为参数的函数调用,主函数会在调用时传入具体的回调函数。例如:

def task(time, callb):callb(time)for i in range(1, 5):task(i, clean)task(i, eating)

代码解释

以下是代码的具体解释:

  • 定义回调函数:def eating(time):print('chifan'+str(time)+'times')def clean(time):print('洗衣服'+str(time)+'times')

  • 定义主函数:def task(time):clean(time)eating(time)for i in range(1, 5):task(i)

  • 使用回调函数作为参数:def task(time, callb):callb(time)for i in range(1, 5):task(i, clean)task(i, eating)

  • 这种设计模式能够让主函数在调用时灵活地指定不同的回调函数,从而提高了程序的可扩展性和灵活性。

    转载地址:http://albqz.baihongyu.com/

    你可能感兴趣的文章
    Java学习第二章——Java基本语句
    查看>>
    遇到问题之-yum update无法连接镜像问题解决
    查看>>
    pycharm如何设置(错误、警告类的标准提醒)
    查看>>
    Python3运行的时候错误:ModuleNotFoundError: No module named 'PIL'
    查看>>
    PHP是世界上最好的语言?Phython第一个不服
    查看>>
    Bugku CTF-web6
    查看>>
    Bugku CTF-web10 头等舱
    查看>>
    UML-配置图
    查看>>
    python入门到秃顶(10):异常
    查看>>
    考研复试英语问答
    查看>>
    百度背景换肤案例
    查看>>
    修改ng-zorro中table对齐及宽度等细节
    查看>>
    输出对象的值——踩坑
    查看>>
    angular2项目里使用排他思想
    查看>>
    在苹果Mac上如何更改AirDrop名称?
    查看>>
    1110 Complete Binary Tree (25 point(s))
    查看>>
    541【毕设课设】基于单片机电阻电感电容RLC测量仪系统
    查看>>
    基于8086交通灯系统仿真设计(微机原理设计资料)
    查看>>
    解读域名管理之:域名注册机构介绍
    查看>>
    找中位数
    查看>>