第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

求解釋此python的lambda表達式

求解釋此python的lambda表達式

慕標(biāo)5832272 2018-07-03 14:18:24
求教一下表達式各變量是怎么變化的,以及結(jié)果,尤其是n怎么變呢?fun = [(lambda n : i + n) for i in range(10)]
查看完整描述

2 回答

?
泛舟湖上清波郎朗

TA貢獻1818條經(jīng)驗 獲得超3個贊

這是 python 中為數(shù)不多的“怪事”之一

fun = [(lambda n: i+n) for i in range(10)]
# 等同于fun = [(lambda n: 9+n) for _ in range(10)]

因為 lambda 內(nèi)的參數(shù) i 在運行時才能確定,不是在聲明時確定。

最后 fun 保存了含有 10 個元素的數(shù)組,每一個元素都是 lambda 方法,該方法等于下面的 lambda_item 函數(shù)

def lambda_item(n):    return 9 + n

如果整個表達式用 python 代碼來詮釋的話,可以是這樣

fun = []for i in range(10):    fun.append((lambda n: 9+n))

另一個讓新人迷惑的是

a = [[0]] * 3a[0].append(1)print(a)

打印出

[[0,1], [0,1], [0,1]]


查看完整回答
反對 回復(fù) 2018-07-06
?
慕田峪7331174

TA貢獻1828條經(jīng)驗 獲得超13個贊

n是參數(shù),調(diào)用的時候才會傳進來,現(xiàn)在并沒有值

查看完整回答
反對 回復(fù) 2018-07-06
  • 2 回答
  • 0 關(guān)注
  • 309 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號