Python callable()函数

描述:

 callable读[ˈkɔːləbl] 。python callable()函数用于检查一个对象是否是可调用的。如果对象参数显示为可调用,则返回true;否则返回false。如果返回true,调用仍然可能失败,但如果返回false,调用对象将永远不会成功。注意,类是可调用的(调用一个类返回一个新实例);如果实例的类有一个调用方法,则实例是可调用的。

对于函数、方法、lambda 表达式、 类以及实现了 __call__ 方法的类实例, 它都返回 True。

语法:

callable(object)

参数介绍:

object---对象

返回值:

可调用返回 True,否则返回 False。

下面例子展示callable()函数使用方法

print(callable(0)) #False
print(callable([0,1])) #False
print(callable({0:1,0:"age"})) #False

def multiply(a,b):  #函数返回True
    return a*b;
print(callable(multiply))

class B:            #类返回True
    def method(self):
        return
print(callable(B))

b = B()      #没有实现 __call__,返回 False
print(callable(b))

class C:
    def __call__(self, *args, **kwargs):
        return
print(callable(C))

c = C()      #实现 __call__,返回 True
print(callable(c))

输出

False
False
False
True
True
False
True
True

本期callable()函数就学到这里。

  • 8
    点赞
  • 42
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Python中,callable是一个内置函数,用于检查一个对象是否可被调用。一个可被调用的对象包括函数、类以及实现了__call__方法的类的实例。使用callable函数可以返回True或False来判断一个对象是否可被调用。\[1\] 下面是一些示例代码来展示callable函数的使用方法: ```python # 函数callable def f(): return 5 print(callable(f)) # True # 数字不是callable num = 5 print(callable(num)) # False # 类是callable,如果类中有方法__call__,类的实例也是callable class A: def __call__(self): print('This is A') a = A() print(callable(a)) # True a() # This is A # 如果类中没有方法__call__,类的实例不是callable class B: def __init__(self): print("This is B") b = B() b() # TypeError: 'B' object is not callable # 类的方法是callable class C: def m1(self): print('This is m1') print(callable(C.m1)) # True C().m1() # This is m1 ``` 另外,callable函数也可以用于判断其他类型的对象是否可被调用,例如数字、列表、字典等。如果对象不可被调用,则返回False。\[2\]\[3\] #### 引用[.reference_title] - *1* *2* [Python:什么是callable?](https://blog.csdn.net/liujg79/article/details/124944428)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [Python callable()函数](https://blog.csdn.net/qq_29720657/article/details/102761350)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

软件测试李同学

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值