def
num():
return
[lambda x: i * x for i in
range(4
)]print
([m(2)
for m in num()]
)
def
func()
: fun_lambda_list =
for i in
range(4
):deflambda_
(x):
print
('lambda函式中 i {} 命名空間為:{}:'
.format
(i,locals()
))return x*i
print
('外層函式 i 為:{} 命名空間為:{}'
.format
(i,locals()
))return fun_lambda_list
fl = func(
)fl[0]
(1)fl[1]
(1)fl[2]
(1)fl[3]
(1)
外層函式 i 為:0 命名空間為:
外層函式 i 為:1 命名空間為:
外層函式 i 為:2 命名空間為:
外層函式 i 為:3 命名空間為:
lambda函式中 i 3 命名空間為:
:lambda函式中 i 3 命名空間為:
:lambda函式中 i 3 命名空間為:
:lambda函式中 i 3 命名空間為:
:
i 在外層作用域
lambda x: x*i
為內層(嵌)函式,他的命名空間中只有 沒有 i ,
所以執行時會向外層函式(這兒是列表解析式函式 [ ])的命名空間中請求 i
而當列表解析式執行時,列表解析式命名空間中的 i經過迴圈依次變化為 0–>1–>2–>3 最後固定為 3 ,
所以當lambda x: x*i
內層函式執行時,去外層函式取 i 每次都只能取到 3。
記筆記記筆記 RMQ ST演算法
1.概述 rmq range minimum maximum query 即區間最值查詢,是指這樣乙個問題 對於長度為n的數列a,回答若干詢問rmq a,i,j i,j n 返回數列a中下標在i,j之間的最小 大值。這兩個問題是在實際應用中經常遇到的問題,下面介紹一下解決這兩種問題的比較高效的演算法...
用Git Sphinx記筆記?
接前面 tex latex texlive 小結,練習使用sphinx寫點東西 圖1 圖2 google code 提供git 只是不清楚什麼原因,無論 push 還是 pull 總是失敗。偉大的牆在發揮作用?about to connect to code.google.com port 443 ...
記筆記的好處
本人大學是從事計算機軟體專業的,從上大學開始第一次接觸部落格,就喜歡沒事閱讀眾博友的文章,很多文章帶給我的是新鮮的感覺,讓我充滿著好奇,別人是怎樣耐心的將自己的感受,分門別類的做出總結,並分享給其他人看。我向來是乙個不愛記筆記的人,我覺得能夠用到大腦的東西,幹嘛還要動手,但今天我開通部落格證明,那句...