Python callable内置函数原理解析

作者:猿说python 时间:2022-02-16 11:27:03 

python内置函数 callable用于检查一个对象是否是可调用的,如果函数返回True,object 仍然可能调用失败;但如果返回 False,调用对象 object 绝对不会成功。

一.callable函数简介

语法如下:

callable(object)

参数介绍:

object : 调用的对象;

返回值:返回bool值,如果object对象可以被调用返回true,不能被调用返回false;

值得注意的是:即便函数返回true,object也有可能调用失败,返回false意味着觉得不会成功!

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

二.callable函数使用


# !usr/bin/env python
# -*- coding:utf-8 _*-
"""
@Author:何以解忧
@Blog(个人博客地址): shuopython.com
@WeChat Official Account(微信公众号):猿说python
@Github:www.github.com

@File:python_len.py
@Time:2020/2/24 21:25

@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
"""
def test(func):
 # 判断func如果是函数,就执行他,如果不是函数,直接返回
 # 判断func是否可调用,如果可以调用,就是true
 if callable(func):
   print("函数可以被调用")
   return func
 else:
   print("函数不可以被调用")
def test2():
 return 'shuopython.com'
if __name__ == "__main__":

print(test(test2())) #等价 test(str)   字符串不是对象
 print("***"*20)
 print(test(test2))  #等价 test(func)  函数是对象
 print("***"*20)
 print(test(123))   #等价 test(int)   整形不是对象

输出结果:

函数不可以被调用
None
************************************************************
函数可以被调用
<function test2 at 0x00000252F39D57B8>
************************************************************
函数不可以被调用
None

来源:https://www.cnblogs.com/shuopython/p/12382202.html

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

猜你喜欢

  • 基于python的Tkinter编写登陆注册界面

    2022-12-20 09:44:30
  • js 分页全选或反选标识实现代码

    2024-04-22 22:44:07
  • 实战mysql导出中文乱码及phpmyadmin导入中文乱码的解决方法

    2024-05-11 09:19:05
  • Oracle将查询的结果放入一张自定义表中并再查询数据

    2024-01-24 18:23:56
  • Python列表推导式与生成器表达式用法示例

    2023-05-31 01:30:40
  • js实现动态增加文件域表单功能

    2024-04-19 09:50:33
  • Python爬虫——爬取豆瓣电影Top250代码实例

    2022-01-31 02:47:22
  • vue多页面项目实现版本快照功能示例详解

    2024-04-28 09:23:25
  • MySQL单表查询常见操作实例总结

    2024-01-20 05:47:17
  • php curl登陆qq后获取用户信息时证书错误

    2023-11-15 08:23:39
  • Python3视频转字符动画的实例代码

    2022-02-09 12:29:29
  • asp如何读取注册表的信息?

    2009-11-19 21:18:00
  • 浅谈tensorflow模型保存为pb的各种姿势

    2023-02-01 21:19:05
  • 在ASP中用FormatDateTime格式化日期

    2010-08-08 19:16:00
  • 网页表单项Input的高级限制级用法

    2008-10-27 16:50:00
  • python asyncio 协程库的使用

    2022-09-13 13:28:16
  • 网站改版常见问题答疑

    2008-08-22 18:31:00
  • jquery和css3中的选择器nth-child使用方法和用途示例

    2024-04-25 13:11:35
  • ASP trim,ltrim,rtrim 去前后空格 函数

    2011-03-03 10:39:00
  • js表单检测数字

    2007-10-12 13:52:00
  • asp之家 网络编程 m.aspxhome.com