python函数的特性。再后面再讲函数装饰器。

1. 函数作为参数传递

# 函数作为参数传递

def c(x):
    return x + 1


def d(f):
    return f(3)


e = d(c)
print(e)

输出:

说明一个函数可以接受另外一个函数对象作为自己的参数,并对函数对象进行处理。

2. 函数作为变量传递

def a(x):
    return x + 1

b = a


print(b(1))

输出:

说明:如果函数不加括号是不会执行的,因为代表的是一个函数对象,它是可以作为变量来传递的。

3.函数作为返回值

def f(x):
    return x**2


def g(y):
    return f(y)

print(g(10))

输出:

100 

说明一个函数返回值可以是另外一个函数.

4. 函数的嵌套以及变量的跨域访问

def h():

    x = 10

    def n():

        return x

    return n()

print(h())

输出:10 


说明:一个函数(主)内部是可以嵌套另外一个函数的,比如上面的例子中h函数中嵌套了一个n函数, n的本地域是没有变量的,但是它在本地寻找后没有找到就会跨到封装域(主函数和子函数之间的范围)寻找。
从csdn搬家过来的可能没有图片,原地址https://blog.csdn.net/weixin_38091140
原文地址:https://www.cnblogs.com/Apy-0816/p/11100287.html