python回调类_python 回调函数和回调方法的实现分析
回调与事件驱动
回调函数有比较重要的意义:它在是事件驱动的体现
我们试想一个场景,如果我们触发了某个事件,比如点击事件
那么只要给这个点击事件绑定一个或多个处理事件,也就是回调函数
我们就可以在点击事件被触发后(结束后)调用相应的方法来处理后事
比如
普通回调
#在函数中使用回调
def click(callback):
eval(callback)() #eval()可以讲字符串解析成可以执行的代码
def handle:
print '在点击事件结束后调用该函数,进行处理,比如弹出框alert()'
if(__name__ == '__main__'):
fun1('fun2')
上面那个场景很显然是模拟我们日常使用浏览器是的一个场景:
当我们点击某个按钮是,可能会弹出一个警告框或者确认框,这可以理解为
点击事件触发后, 调用了这个处理函数,这个函数的功能就是弹出一个警告框或者确认框
从事件驱动来讲: 点击事件的发送驱动这handle处理程序的触发
恩,这样会不会比较清晰?
类中使用回调
因为python从一开始就是面向对象的定位,所以作为python 程序员, 可能会面对如下的场景:
我们创建一个实例, 我们传入数据给这个实例,最后得到我们我们想要的结果,比如我们传给
一个名为 getCsdnTitle的对象一个url(一篇csdn博客的url),我们希望最后得到这篇文章的文字内容,
我们是不是首先地通过http请求获取该url 对应的html内容,给这个方法命名为fetch_url()
然后我们需要对html进行处理,比如过滤,正则匹配,字符串处理,得到我们想要的文字内容,给这个方法命名为
get_content()
这样这个对象内部就需要经过fetch_url 和 get_content 两个方法来得到最后我们需要的结果,而且两者是有明显的
顺序区别的,我们可以理解为调用完fetch_url 后回调 get_content 方法,大家可能会说,这是不是麻烦了很多,
其实,大家要知道,实际开发中这条执行链是可能会很长的,通过回调,我们就可以指定在某个步骤执行完后我们要进行怎么样的
操作,这样逻辑上和理解上都会很有效率
下面举个小例子演示下在类中实现回调的方法
#在类中使用回调方法
#在函数中使用回调
def click(callback):
eval(callback)() #eval()可以讲字符串解析成可以执行的代码
def handle:
print '在点击事件结束后调用该函数,进行处理,比如弹出框alert()'
if(__name__ == '__main__'):
fun1('fun2')
本文标题: python 回调函数和回调方法的实现分析
本文地址: http://www.cppcns.com/jiaoben/python/145568.html
python回调类_python 回调函数和回调方法的实现分析相关推荐
- PHP - 回调函数概念与用法实例分析 - 学习/实践
1.应用场景 主要用于理解回调函数的概念, 对比JavaScript中的回调函数, 更加深刻理解回调函数的本质, 以及如何高效使用~~~ 2.学习/操作 1. 文档阅读 https://www.jb5 ...
- 怎么理解回调函数? 回调函数合集
网上查了一通,有点体会,特来分享与讨论. ******************************************************************************* ...
- 什么是回调函数?回调函数有什么缺点?如何解决回调地狱问题?
什么是回调函数?回调函数有什么缺点?如何解决回调地狱问题? 参考文章: (1)什么是回调函数?回调函数有什么缺点?如何解决回调地狱问题? (2)https://www.cnblogs.com/kzxi ...
- java回调函数_PHP回调函数及匿名函数概念与用法详解
1.回调函数 PHP的回调函数其实和C.Java等语言的回调函数的作用是一模一样的,都是在主线程执行的过程中,突然跳去执行设置的回调函数: 回调函数执行完毕之后,再回到主线程处理接下来的流程 而在ph ...
- java 自定义函数的调用_Java/Android中的函数调用回调函数自定义回调函数
在做Android自定义控件时遇到要自定义回调函数的问题,想想自己还暂时没有那么精深的技术,赶紧返过头回来再重新研究Java中回调函数的问题.然而不幸的是,网上太多杂乱的帖子和博客都是转来转去,而且都 ...
- 回调函数中有回调函数吗_嗨,那里有回调!
回调函数中有回调函数吗 因为是我的书包,所以我喜欢JavaScript . 实际上,我已经开始喜欢JavaScritp的面向异步回调的编程风格 . 因此,当我发现自己处于非JavaScript环境中时 ...
- 回调函数与回调地狱及其解决方法 | JavaScript
JavaScript中的回调函数与回调地狱及其解决方法 以下为整理的思维导图 图片版+文字版 文末附有参考文章链接 知识点思维导图版 一.什么是回调函数 1.MDN的定义 回调函数是作为参数传给另一个 ...
- Java回调函数异步回调案例
1.回调函数分类 回调函数区分:同步回调和异步回调 同步回调:意义只在于完成方法调用: 异步调用:可实现并发,主业务线程可以及时释放:异步线程完成工作,执行回调函数,完成善后工作:提高了执行效率. 2 ...
- Java 回调函数(传统方法和lambda方法)-一个例子秒懂
原文地址为: Java 回调函数(传统方法和lambda方法)-一个例子秒懂 背景: 想写一个工具类 Tool.java ,其中方法 public void readOneLine() 负责一行一行地 ...
最新文章
- Java中的BigDecimal类你真的了解吗?
- ThreadLocal究竟存不存在内存泄漏?
- 分享五个你应该了解的宣言
- 《Spring Cloud微服务实战》100本赠书获得名单
- 资源不关闭,会导致什么最坏的结果
- mac下安装mongodb
- [TP5填坑]关于助手函数input一不小心取不到get值的解决办法
- 图片md5修改工具_如何修改视频和图片的MD5,用电脑自带的命令
- Moodle: 查询 / 更新 / 添加 / 删除 / 导出 用户 ($DB用法)
- 【排序算法】插入、选择、堆排、快排、归并、计数
- php unset函数 赋值 null来销毁变量
- python开发web靠谱吗_Python用来做Web开发的优缺点,你心里必须要记得这些
- 【Unity3D插件】Alembic插件分享《abc动画文件导入Unity》
- android免费图标_20个免费和高质量的Android图标集—最佳
- 训练集和验证集的划分
- unity 中的LayerMask用法
- 目前几种实时视频流协议对比
- 肯德基真的没有什么太多吃的谨慎洋…
- 测试iphone硬件好坏的软件,iPhone手机如何检测硬件故障,硬件检测必备技能,建议了解一下...
- Flume使用Spooling Directory Source采集文件夹数据到hdfs
热门文章
- Ubuntu 编译安装ffmpeg,mplayer,x264全教程支持VDPAU(高清硬解)
- Mac下配置ndk/adb
- Android apk系列1-------APK签名
- Ubuntu安装:解决Unable to locate package *** 问题
- 【leetcode】只出现一次的数字(位运算)
- linux pkill窗口,在Linux系统中pkill命令的基础,附pkill命令的使用示例
- python散点图拟合曲线如何求拟合_python 拟合曲线并求参
- oracle1-100,Oracle 批量给某一列循环加数例如从1加到100
- matlab画迟滞迥线,[画图的问题]怎么画类似于磁滞回线的图像?一个x值对应两个y值的...
- html箭头实现流程箭头,js实现带箭头的进度流程