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

软件发布|下载排行|最新软件

当前位置:首页IT学院IT技术

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

不积硅步,无以至千里   2021-10-26 我要评论
想了解解析python调用函数加括号和不加括号的区别的相关内容吗,不积硅步,无以至千里在本文为您仔细讲解python函数括号的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:python调用函数括号,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返回的对象;

Copyright 2022 版权所有 软件发布 访问手机版

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 联系我们