python學習之Lambda表達式
阿新 • • 發佈:2017-11-16
列表 語法 lsp 不用 一個 ssi pad turn java、
如果不用Lambda表達式,而要寫成常規的函數,那麽需要這麽寫:
“Lambda 表達式”(lambda expression)是一個匿名函數,即沒有函數名的函數。Lambda表達式可以表示閉包(註意和數學傳統意義上的不同)。
1、python中的lambda表達式
Lambda表達式是Python中一類特殊的定義函數的形式,使用它可以定義一個匿名函數。與其它語言不同,Python的Lambda表達式的函數體只能有唯一的一條語句,也就是返回值表達式語句。其語法如下:
lambda 形參列表 : 函數返回值表達式語句 下面是個Lambda表達式的例子:1 2 3 4 |
#!/usr/bin/envpython
li = [{ "age" : 20 , "name" : "def" },{ "age" : 25 , "name" : "abc" },{ "age" : 10 , "name" : "ghi" }]
li = sorted (li,key = lambda x:x[ "age" ])
print (li)
|
1 2 3 4 5 6 |
#!/usr/bin/envpython
def comp(x):
return x[ "age" ]
li = [{ "age" : 20 , "name" : "def" },{ "age" : 25 , "name" : "abc" },{ "age" : 10 , "name" : "ghi" }]
li = sorted (li,key = comp)
print (li)
|
2、在c#、Java、c++中也有lambda表達式
python學習之Lambda表達式