python回调函数用法实例分析


Posted in Python onMay 09, 2015

本文实例讲述了python回调函数用法。分享给大家供大家参考。具体分析如下:

软件模块之间总是存在着一定的接口,从调用方式上,可以把他们分为三类:同步调用、回调和异步调用。同步调用是一种阻塞式调用,调用方要等待对方执行完毕 才返回,它是一种单向调用;回调是一种双向调用模式,也就是说,被调用方在接口被调用时也会调用对方的接口;异步调用是一种类似消息或事件的机制,不过它 的调用方向刚好相反,接口的服务在收到某种讯息或发生某种事件时,会主动通知客户方(即调用客户方的接口)。回调和异步调用的关系非常紧密,通常我们使用 回调来实现异步消息的注册,通过异步调用来实现消息的通知。同步调用是三者当中最简单的,而回调又常常是异步调用的基础,因此,这里我们着重讨论回调机制 在不同软件架构中的实现。

#call.py
import called
def callback():
  print "in callback"
def main():
  #called.test()
  called.test_call(callback)
  print "in call.py" 
main()

#called.py
'''''
def test():
  print "in called.py test()"
'''
def test_call(p_call):
  print "in called.py test_call()"
  p_call()

joe@joe:~/test/python$ python call.py
in called.py test_call()
in callback
in call.py
joe@joe:~/test/python$

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
浅析Python中的多进程与多线程的使用
Apr 07 Python
Python的语言类型(详解)
Jun 24 Python
django多文件上传,form提交,多对多外键保存的实例
Aug 06 Python
python中的逆序遍历实例
Dec 25 Python
python实现word文档批量转成自定义格式的excel文档的思路及实例代码
Feb 21 Python
Python enumerate内置库用法解析
Feb 24 Python
Python结合Window计划任务监测邮件的示例代码
Aug 05 Python
python将数据插入数据库的代码分享
Aug 16 Python
python 还原梯度下降算法实现一维线性回归
Oct 22 Python
python中strip(),lstrip(),rstrip()函数的使用讲解
Nov 17 Python
Python 实现二叉查找树的示例代码
Dec 21 Python
基于Python 函数和方法的区别说明
Mar 24 Python
python类和函数中使用静态变量的方法
May 09 #Python
Python实用日期时间处理方法汇总
May 09 #Python
python fabric使用笔记
May 09 #Python
Python字符串详细介绍
May 09 #Python
Python urllib、urllib2、httplib抓取网页代码实例
May 09 #Python
python MySQLdb Windows下安装教程及问题解决方法
May 09 #Python
Python MySQLdb Linux下安装笔记
May 09 #Python
You might like
php中使用session_set_save_handler()函数把session保存到MySQL数据库实例
2014/11/06 PHP
CI映射(加载)数据到view层的方法
2016/03/28 PHP
PHP 文件上传后端处理实用技巧方法
2017/01/06 PHP
yii插入数据库防并发的简单代码
2017/05/27 PHP
PHP排序算法之快速排序(Quick Sort)及其优化算法详解
2018/04/21 PHP
能说明你的Javascript技术很烂的五个原因分析
2011/10/28 Javascript
javascript改变position值实现菜单滚动至顶部后固定
2013/01/18 Javascript
jquery如何把参数列严格转换成数组实现思路
2013/04/01 Javascript
jQuery中document与window以及load与ready 区别详解
2014/12/29 Javascript
javascript跨域总结之window.name实现的跨域数据传输
2015/11/01 Javascript
jquery限定文本框只能输入数字(整数和小数)
2016/01/08 Javascript
jQuery EasyUI datagrid在翻页以后仍能记录被选中行的实现代码
2016/08/15 Javascript
微信小程序 教程之模块化
2016/10/17 Javascript
详解ECharts使用心得总结
2016/12/06 Javascript
Webpack实战加载SVG的方法
2017/12/26 Javascript
JS计算距当前时间的时间差实例
2017/12/29 Javascript
Nuxt.js SSR与权限验证的实现
2018/11/21 Javascript
JS与SQL方式随机生成高强度密码示例
2018/12/29 Javascript
Vue 使用typescript如何优雅的调用swagger API
2020/09/01 Javascript
python使用win32com库播放mp3文件的方法
2015/05/30 Python
python中的for循环
2018/09/28 Python
python中的print()输出
2019/04/12 Python
python算法题 链表反转详解
2019/07/02 Python
win10子系统python开发环境准备及kenlm和nltk的使用教程
2019/10/14 Python
Python tkinter模版代码实例
2020/02/05 Python
opencv python 图片读取与显示图片窗口未响应问题的解决
2020/04/24 Python
torchxrayvision包安装过程(附pytorch1.6cpu版安装)
2020/08/26 Python
维珍澳洲航空官网:Virgin Australia
2017/09/08 全球购物
STAY JAPAN台湾:预订日本民宿
2018/07/22 全球购物
秸秆管理实施方案
2014/03/15 职场文书
年终奖发放方案
2014/06/02 职场文书
工作粗心大意检讨书
2014/09/18 职场文书
学习保证书怎么写
2015/02/26 职场文书
商场圣诞节活动总结
2015/05/06 职场文书
辩护词范文大全
2015/05/21 职场文书
sql server 累计求和实现代码
2022/02/28 SQL Server