函式物件和閉包

2022-09-04 02:09:09 字數 737 閱讀 5785

# 1. 引用

func = f1

print('f1:', f1)

print('func:', func)

func()

# 2.當作容器類元素

lt = [f1, 1, 2, 3]

print('lt[0]', lt[0])

print('f1', f1)

lt[0]()

# 3. 當作函式引數

def f2(f2_f1):

print('f2_f1',f2_f1)

f2_f1()

f2(f1)

print('f1', f1)

# 4. 當作函式的返回值

def f2(f2_f1):

return f2_f1

閉(封閉/關閉)包(包子/把餡(閉包函式內部的變數)和皮(閉包函式內部的函式)包起來) --》返回閉包函式內部的函式

閉包函式內部的變數+閉包函式內部的函式,這兩者包裹在一起

import requests

def f1(url): # f1就叫做閉包函式

def spider():

requests.get(url)

print(url)

return spider # 函式物件

taobao = f1('www.taobao.com')

taobao()

014 函式物件和閉包

二 閉包函式 函式物件指的是函式可以被當做 資料 來處理,具體可以分為四個方面的使用 defadd x,y return x y.func add func 1,2 3 dic dic dic add 1,2 3 deffoo x,y,func return func x,y foo 1,2,add...

物件 巢狀和閉包函式

func 記憶體位址 def func print from func f func print f,func f def foo x x func的記憶體位址 print x x func foo func foo func的記憶體位址 def foo x x func的記憶體位址 return ...

函式物件 閉包

python一切皆物件,函式也可以看成是乙個函式物件。函式將作為乙個返回物件在另乙個函式中返回。def calc a,b c a b return c res calc 10,20 print res 乙個內部的函式引用了外部函式的變數,這種語法結構就形成了閉包 def calc test args...