匿名函數
python
定義:
匿名函數,即沒有名字的函數
Python中藉助Lambda表達式構建匿名函數
匿名函數,必須使用lambda關鍵字定義,只能寫在一行上,也被稱爲單行函數
用途:通常在高階函數傳參時,使用lambda表達式,每每能簡化代碼
語法:
lambda 參數列表:表達式
使用lambda關鍵字來定義匿名函數
參數列表不須要小括號
冒號是用來分割參數列表和表達式的
不須要使用return語句 表達式的值,就是匿名函數的返回值
#####冒號後面不能夠有=和retrun
ide
def add(x,y): return x + y #==================== add= lambda x,y:x+y
#上面2個是同樣的,一個是普通函數定義,一個lambda函數定義的方式
lambda表達式基礎練習
prin([lambda x: x+1][0](2) )
函數
#這個用列表定義了一個匿名函數的第0個元素,傳參1,
spa
print(lambda x:None)
#這個表示沒有返回值 冒號後面不能夠有=和retrunit
print((lambda x:100)('ggggg'))
#這個是恆定返回100,100是個常量class
print(lambda :100)
#這個表示無參數,可是return返回值同樣要填寫.後面的小括號能夠不寫匿名函數
print({x:y for x,y in (lambda *args: map(lambda x:(x+1,args),args))(*range(5))})
#首先看這個裏面最後輸出的一個元組類型。先看最右邊的解構,0、一、二、三、4. 值先傳到lambda表達式的*args,再到了第二個lambda表達式x便是0-4,裏面的是一個元組,args仍是解構的0-4,等到的結果是{1: (0, 1, 2, 3, 4), 2: (0, 1, 2, 3, 4), 3: (0, 1, 2, 3, 4), 4: (0, 1, 2, 3, 4), 5: (0, 1, 2, 3, 4)}
基礎