Python callable()函数用法实例分析


Posted in Python onMarch 17, 2018

本文实例讲述了Python callable()函数用法。分享给大家供大家参考,具体如下:

python中的内建函数callable( ) ,可以检查一个对象是否是可调用的

对于函数, 方法, lambda 函数式, 类, 以及实现了 _ _call_ _ 方法的类实例, 它都返回 True.

>>> help(callable)
Help on built-in function callable in module __builtin__:
callable(...)
 callable(object) -> bool
 Return whether the object is callable (i.e., some kind of function).
 Note that classes are callable, as are instances with a __call__() method.

1》函数是可调用的

>>> def add(x,y):
...  return x+y
...
>>> callable(add)
True

2》类和类内的方法是可调用的

>>> class C:
...  def printf(self):
...   print 'This is class C!'
...
>>> objC=C()
>>> callable(C)#类是可调用的,调用它们, 就产生对应的类实例.
True
>>> callable(C.printf)
True
>>> callable(objC.printf)
True

3》实现了__call__()方法的类实例是可调用的

>>> class A:
...  def printf(self):
...   print 'This is class A!'
...
>>> objA=A()
>>> callable(A) #类是可调用的,调用它们, 就产生对应的类实例.
True
>>> callable(objA) #类A没有实现__call__()方法,因此,类A的实例是不可调用的
False
>>> class B:
...  def __call__(self):
...   print 'This is class B!'
...
>>> objB=B()
>>> callable(B) #类是可调用的,调用它们, 就产生对应的类实例.
True
>>> callable(objB) #类B实现了__call__()方法,因此,类B实例是可调用的
True

4》lambda表达式是可调用的

>>> f=lambda x,y:x+y
>>> f(2,3)
5
>>> callable(f)
True

其它的,像整数,字符串,列表,元组,字典等等,都是不可调用的,如下:

>>> callable(2)
False
>>> callable('python')
False
>>> l=[1,2,3]
>>> callable(l)
False
>>> t=(4,5,6)
>>> callable(t)
False
>>> d={'a':1,'b':2}
>>> callable(d)
False

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

Python 相关文章推荐
Python中转换角度为弧度的radians()方法
May 18 Python
Python selenium文件上传方法汇总
Nov 19 Python
Python正则表达式实现截取成对括号的方法
Jan 06 Python
Python 基础教程之闭包的使用方法
Sep 29 Python
在python中只选取列表中某一纵列的方法
Nov 28 Python
flask实现验证码并验证功能
Dec 05 Python
python3中pip3安装出错,找不到SSL的解决方式
Dec 12 Python
解决python中显示图片的plt.imshow plt.show()内存泄漏问题
Apr 24 Python
python实现文法左递归的消除方法
May 22 Python
Pandas中两个dataframe的交集和差集的示例代码
Dec 13 Python
python 邮件检测工具mmpi的使用
Jan 04 Python
opencv 分类白天与夜景视频的方法
Jun 05 Python
Python matplotlib绘图可视化知识点整理(小结)
Mar 16 #Python
python中matplotlib的颜色及线条控制的示例
Mar 16 #Python
Python lambda函数基本用法实例分析
Mar 16 #Python
Python切片操作实例分析
Mar 16 #Python
Python+request+unittest实现接口测试框架集成实例
Mar 16 #Python
Python基础教程之内置函数locals()和globals()用法分析
Mar 16 #Python
python xlsxwriter库生成图表的应用示例
Mar 16 #Python
You might like
简单采集了yahoo的一些数据
2007/02/14 PHP
PHP对MongoDB[NoSQL]数据库的操作
2013/03/01 PHP
如何在Ubuntu下启动Apache的Rewrite功能
2013/07/05 PHP
PHP多线程类及用法实例
2014/12/03 PHP
在Z-Blog中运行代码[html][/html](纯JS版)
2007/03/25 Javascript
img的onload的另类用法
2008/01/10 Javascript
jQuery 操作XML入门
2008/12/25 Javascript
javascript Prototype 对象扩展
2009/05/15 Javascript
Query中click(),bind(),live(),delegate()的区别
2013/11/19 Javascript
2014 年最热门的21款JavaScript框架推荐
2014/12/25 Javascript
详解JavaScript的策略模式编程
2015/06/24 Javascript
浅谈javascript函数式编程
2015/09/06 Javascript
判断数组的最佳方法(推荐)
2016/10/11 Javascript
ES6新特性四:变量的解构赋值实例
2017/04/21 Javascript
Vuejs 2.0 子组件访问/调用父组件的方法(示例代码)
2018/02/08 Javascript
javascript性能优化之分时函数的介绍
2018/03/28 Javascript
JavaScript实现的鼠标跟随特效示例【2则实例】
2018/12/22 Javascript
JavaScript中filter的用法实例分析
2019/02/27 Javascript
vue组件开发之tab切换组件使用详解
2020/08/21 Javascript
windows系统下Python环境搭建教程
2017/03/28 Python
Django 删除upload_to文件的步骤
2020/03/30 Python
在tensorflow实现直接读取网络的参数(weight and bias)的值
2020/06/24 Python
html5记忆翻牌游戏实现思路及代码
2013/07/25 HTML / CSS
Tripadvisor新西兰:阅读评论,比较价格和酒店预订
2018/02/10 全球购物
iHerb俄罗斯:维生素、补品和天然产品
2020/07/09 全球购物
优秀体育委员自荐书
2014/01/31 职场文书
视光学毕业生自荐书范文
2014/02/13 职场文书
投资合作协议书范本
2014/04/17 职场文书
幸福中国演讲稿
2014/09/12 职场文书
2014年纠风工作总结
2014/12/08 职场文书
2015年中秋寄语
2015/07/31 职场文书
2019销售早会主持词
2019/06/27 职场文书
学会掌握自己命运的十条黄金法则:
2019/08/08 职场文书
Django与数据库交互的实现
2021/06/03 Python
微软官方消息,在 2023 年 4 月 11 日之后微软将不再为 Office 2013 和 Skype for Business 2015 提供安全更新
2022/04/21 数码科技
Redis实战之Lettuce的使用技巧详解
2022/12/24 Redis