日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Python閉包函數(shù)講解

閉包的特點(diǎn)就是內(nèi)部函數(shù)引用了外部函數(shù)中的變量。 在Python中,支持將函數(shù)當(dāng)做對象使用,也就是可以將一個(gè)函數(shù)當(dāng)做普通變量一樣用作另一個(gè)函數(shù)的參數(shù)和返回值。擁有此類特性的語言,一般都支持閉包。

成都創(chuàng)新互聯(lián)于2013年創(chuàng)立,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目成都做網(wǎng)站、成都網(wǎng)站建設(shè)網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢想脫穎而出為使命,1280元黃山區(qū)做網(wǎng)站,已為上家服務(wù),為黃山區(qū)各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:13518219792

閉包中被內(nèi)部函數(shù)引用的變量,不會因?yàn)橥獠亢瘮?shù)結(jié)束而被釋放掉,而是一直存在內(nèi)存中,知道內(nèi)部函數(shù)被調(diào)用結(jié)束。

閉包函數(shù)

閉:指的是定義在函數(shù)內(nèi)部的函數(shù) 比如手機(jī)是閉包函數(shù)(內(nèi)層函數(shù)),被手機(jī)包裝盒 (外層函數(shù)) 包裹起來, 手機(jī)可以使用包裝盒中的東西,內(nèi)層函數(shù)可以引用外層函數(shù)的名字。 閉包函數(shù)是 函數(shù)嵌套、函數(shù)對象、名稱空間與作用域 結(jié)合體。

基本形式:

def outer():
name ='egon'
def inner():
print('my name is %s' %name)
return inner
# print(outer())
f=outer()
f()

閉包的小應(yīng)用:

#爬蟲:模擬訪問百度

import requests

def get(url):

response = requests.get(url)
if response.status_code == 200:
print(response.text)

get('https://www.baidu.com/')
get('https://www.baidu.com/')
get('https://www.baidu.com/') #問題:每次訪問百度,都要調(diào)用一次,填一次地址

# 解決辦法:用閉包函數(shù)
def outter():
url = 'https://www.baidu.com/' #問題:把地址定死了,
def get():
response = requests.get(url)
if response.status_code == 200:
print(response.text)
return get
baidu = outter() #baidu --->get
baidu()

# 改進(jìn):
def outter(url):
def get():
response = requests.get(url)
if response.status_code == 200:
print(response.text)
return get
baidu = outter('https://www.baidu.com/') #baidu --->get
taobao = outter('https://www.taobao.com/') #taobao --->get
baidu() #專門調(diào)百度
taobao() #專門調(diào)淘寶

分享標(biāo)題:Python閉包函數(shù)講解
網(wǎng)站鏈接:http://www.dlmjj.cn/article/djgoegc.html