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

作者:快递小可 时间:2021-12-14 00:28:52 

本文实例讲述了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程序设计有所帮助。

来源:http://blog.csdn.net/sxingming/article/details/51487986

标签:Python,callable,函数
0
投稿

猜你喜欢

  • 使用tensorflow DataSet实现高效加载变长文本输入

    2022-12-09 09:26:09
  • Persits AspJpeg组件图片水印\\缩略图\\图片合并\\图片切割\\实例教程

    2008-12-14 10:36:00
  • pandas行和列的获取的实现

    2022-06-05 07:57:49
  • Python文本特征抽取与向量化算法学习

    2023-07-19 09:44:29
  • php面向对象全攻略 (十二) 抽象方法和抽象类

    2023-11-18 20:44:18
  • python验证身份证信息实例代码

    2022-11-19 13:36:24
  • 基于Python计算圆周率pi代码实例

    2021-03-06 05:13:17
  • 教你快速掌握SQL语言中游标的使用技巧

    2009-01-08 16:24:00
  • python烟花效果的代码实例

    2022-09-01 05:42:41
  • 六行python代码的爱心曲线详解

    2022-04-09 23:15:17
  • 关于Python字典(Dictionary)操作详解

    2022-02-04 15:25:01
  • 体验DW MX 2004 CSS新功能

    2011-06-14 09:45:01
  • 关于Python OS模块常用文件/目录函数详解

    2023-07-04 06:30:06
  • 从XML中读取数据到内存的实例

    2008-09-04 14:43:00
  • 公用样式模板的设计制作

    2009-09-13 21:27:00
  • 仿豆瓣分页原型(Javascript版)

    2007-11-05 14:04:00
  • ASP SCRIPT: 计数器(使用GrapShot组件)

    2008-11-07 15:36:00
  • 在Python的列表中利用remove()方法删除元素的教程

    2023-03-21 12:42:39
  • PHP数组交集的优化代码分析

    2023-09-29 21:58:59
  • Django项目中model的数据处理以及页面交互方法

    2022-12-26 20:12:25
  • asp之家 网络编程 m.aspxhome.com