以前一直對Lambda表達(dá)式不是太熟,后來看kotlin的時候聽說了這個東西,就去查了一下越走,java8中也有,單純的把這個歸為語法糖靠欢,實際開發(fā)中用的倒不是很多廊敌,今天正好看到Python中也有,覺得有必要單獨拉出來聊聊
- 在python中门怪,lambda是個關(guān)鍵字
- lambda就是一個簡單的匿名函數(shù)
- 以上兩點都是我目前的水平猜的
# 定義一個函數(shù)骡澈,返回lambda表達(dá)式
>>> def test_lmd(n):
return lambda x: x+n
# 直接運算是不行的,上面已經(jīng)說了掷空,匿名函數(shù)
>>> test_lmd(20)
<function test_lmd.<locals>.<lambda> at 0x0000000002FE8268>
>>> f = test_lmd(20)
>>> f(0)
20
>>> f(5)
25
# 用lambda在排序中做個運算
>>> pairs = [(1,"one"),(2,"two"),(3,"three")]
>>> pairs.sort(key = lambda pair:pair[1])
>>> pairs
[(1, 'one'), (3, 'three'), (2, 'two')]
>>>