Python笔记:调用函数,带扩和和不带括号的区别
调用函数,如果带括号,那么是调用函数运行后的结果,
调用函数不带括号,调用的是函数本身
例如
def cun (a,b):
return a+b
print(cun) : 调用函数,打印的是函数
print(cun(2,3)),调用函数运行后结果,打印的是 5
def cun(a,b):
…return (a+b)
…
print(cun)
print(cun(2+3))
Traceback (most recent call last):
File “”, line 1, in
TypeError: cun() missing 1 required positional argument: ‘b’
print(cun(2,3))
5
>
作者:金金刚狼
链接:https://www.jianshu.com/p/01ecc37b9719
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
Python笔记:调用函数,带扩和和不带括号的区别
这样写你看下:这是这种写法无法将x传到b里面去
def b(y):
return x+y
def a(x):
return b
其实你调用a–>打印的是a的内存地址,a(x)就是调用的a方法,返回的是b相当于你直接打印b的内存地址一样,
所以
**a–>函数a的内存地址
a(x) –>调用a方法,返回b函数对象相当于–>b
a(x)(y)–>b(y)调用b方法返回x和y的值,这里x取的是a方法的参数值,y是b方法的参数值,这点可以理解下参数的作用域**