解析python调用函数加括号和不加括号的区别

 更新时间:2021年10月26日 08:46:10   作者:不积硅步,无以至千里  
这篇文章主要介绍了python调用函数加括号和不加括号的区别,不带括号时,调用的是这个函数本身 ,是整个函数体,是一个函数对象,不须等该函数执行完成,具体实例代码跟随小编一起看看吧

下面看下python调用函数加括号和不加括号的区别,具体代码如下所示;

 def  bracket(data):
  
      return data
 
  if __name__ == '__main__':
  
      # 不带括号调用的结果:<function bracket at 0x0000000004DD0B38>,a是整个函数体,是一个函数对象,不须等该函数执行完成
 
     a = bracket
 
     print a
 
     # 带括号调用的结果:6 ,b是函数执行后返回的值6,须等该函数执行完成的结果
 
     b = bracket(6)
 
    print b

1、不带括号时,调用的是这个函数本身 ,是整个函数体,是一个函数对象,不须等该函数执行完成。

2、带括号(参数或者无参),调用的是函数的执行结果,须等该函数执行完成的结果。

简单说就是:

如果使用括号,则只调用if和函数。hello()调用函数;hello只是一个绑定到函数的名称,可以用来将函数对象作为参数传递给另一个函数。

def caller(f):
    f()

def hello():
    print("hi")

def goodbye():
    print("bye")

caller(hello)  # Prints "hi"
caller(goodbye)  # Prints "bye"

id返回不同的值,因为对id的每次调用都接收一个完全独立的对象作为其参数。使用id(hello)id获取函数对象本身。使用id(hello())id将获得通过调用hello返回的对象;

到此这篇关于python调用函数加括号和不加括号的区别的文章就介绍到这了,更多相关python调用函数加括号和不加括号的区别内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 详解Python的基础语法和变量操作

    详解Python的基础语法和变量操作

    这篇文章主要详细介绍了Python的基础语法和变量操作,对刚刚学习python的小伙伴非常友好,对我们的学习有一定的帮助,需要的朋友可以参考下
    2023-06-06
  • Python如何使用ConfigParser读取配置文件

    Python如何使用ConfigParser读取配置文件

    这篇文章主要介绍了Python如何使用ConfigParser读取配置文件,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-11-11
  • 详解 python logging日志模块

    详解 python logging日志模块

    这篇文章主要介绍了详解 python logging日志模块,记录日志最简单的方法就是在你想要记录的地方加上一句 print , 我相信无论是新手还是老鸟都经常这么干。在简单的代码中或者小型项目中这么干一点问题都没有,需要的朋友可以参考下
    2022-01-01
  • 浅谈pytorch中torch.max和F.softmax函数的维度解释

    浅谈pytorch中torch.max和F.softmax函数的维度解释

    这篇文章主要介绍了浅谈pytorch中torch.max和F.softmax函数的维度解释,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-06-06
  • 利用QT写一个极简单的图形化Python闹钟程序

    利用QT写一个极简单的图形化Python闹钟程序

    这篇文章主要介绍了利用QT写一个极简单的图形化Python闹钟程序,核心代码只有25行,显示屏幕提示而没有闹铃声音,需要的朋友可以参考下
    2015-04-04
  • Python XML自动化处理全攻略分享

    Python XML自动化处理全攻略分享

    在当今的信息化时代,XML作为一种重要的数据交换格式,广泛应用于各种领域,Python作为一种功能强大的编程语言,也提供了丰富的库来支持对XML文档的操作,本章将介绍Python XML自动化处理全攻略,需要的朋友可以参考下
    2025-03-03
  • python+opencv+selenium自动化登录邮箱并解决滑动验证的问题

    python+opencv+selenium自动化登录邮箱并解决滑动验证的问题

    本文主要讲解基于python+opencv+selenium自动化登录邮箱并解决滑动验证的问题,在这大家需要注意页面元素定位及文本框和验证码的frame嵌套问题,感兴趣的朋友一起看看吧
    2021-07-07
  • python  ceiling divide 除法向上取整(或小数向上取整)的实例

    python ceiling divide 除法向上取整(或小数向上取整)的实例

    今天小编就为大家分享一篇python ceiling divide 除法向上取整 (或小数向上取整)的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-12-12
  • Python中的数据对象持久化存储模块pickle的使用示例

    Python中的数据对象持久化存储模块pickle的使用示例

    这篇文章主要介绍了Python中的数据对象持久化存储模块pickle的使用示例,重点讲解了pickle中模块中对象持久化和文件读取的相关方法,需要的朋友可以参考下
    2016-03-03
  • Python集成开发工具Pycharm的安装和使用详解

    Python集成开发工具Pycharm的安装和使用详解

    这篇文章主要介绍了Python集成开发工具Pycharm的安装和使用详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-03-03

最新评论