1. 程式人生 > >python函式的特性。再後面再講函式裝飾器。

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))
說明一個函式返回值可以是另外一個函式.

4. 函式的巢狀以及變數的跨域訪問

def h():

    x = 10

    def n():

        return x

    return n()

print(h())
說明:一個函式(主)內部是可以巢狀另外一個函式的,比如上面的例子中h函式中嵌套了一個n函式, n的本地域是沒有變數的,但是它在本地尋找後沒有找到就會跨到封裝域(主函式和子函式之間的範圍)尋找。