Python函数学习中return func 和return func() 的区别

最近学习了python中的闭包及装饰器部分,对于内部函数下需要return func 大为不解,非常想知道为啥不是return func()呢?

于是我分别定义了个函数,查看带括号和不带括号的type.

def func1():

pass

print(type(func1))

#执行结果:

print(type(func1()))

#执行结果:

由此可见:

使用return func 时返回的是func 这个函数

使用return func() 时返回的是func() 执行后的返回值,如果func()函数没有返回值则返回值为None,

func函数如果有其他打印语句也会一起执行。

你可能感兴趣的:(Python开发)