1. 程式人生 > 其它 >33.Python:閉包函式

33.Python:閉包函式

# Python learning
# coding:utf-8

# 閉包函式=名稱空間與作用域+函式巢狀+函式物件
# 核心點:名字的查詢關係是以函式定義階段為準

# 什麼是閉包函式
# "閉"函式指的是該函式是內嵌函式
# "包"函式指的是該函式包含對外層函式作用域的引用(不是對全域性作用域)

# def f1():
# x = 1111111111
#
# def f2():
# print(x)
# f2()
#
#
# x = 2222222222
# f1()
#
#
# def bar():
# x = 3333333333
# f1()
#
#
# def foo():
# x = 4444444444
# bar()
#
#
# foo()

# 閉包函式:函式物件
def f1():
x = 3333333333

def f2():
print(x)
return f2


f = f1()
f()


# 定義閉包函式


# 閉包函式的應用
# 兩種為函式體傳參的方式
# 1.直接把函式體需要的引數定義成形參

# def f2(x):
# print(x)
#
#
# f2(1)

# 2.
# def f1():
# x = 3
#
# def f2():
# print(x)
#
# return f2
#
#
# f = f1()
# f()


# import requests
#
#
# def search_url(url):
#
# def get():
# response = requests.get(url)
# print(len(response.text))
#
# return get
#
#
# url1 = input('url:')
#
# f = search_url(url1)
# f()