Python3 的lambda表達式


1、匿名函數

一般的屌絲函數是這樣定義的

def ds(x):
    return 2*x+1

而匿名函數是這樣的

lambda x:2*x+1

使用匿名函數的好處

1、可以使函數更加簡潔

2、無需考慮命名,不用為孩子起名字絞盡腦汁了哈哈哈哈哈

3、簡化代碼,提高代碼的可讀性

2、兩個常用的內置函數

1)filter(參數1,參數2) 參數2帶入參數1中計算如果為真最后返回輸出為真的集合

利用lambda表達式和filter()求100以內3的倍數

list(filter(lambda n : not(n%3), range(1, 100)))

利用列表推導式代替上題

[ i for i in range(1, 100) if not(i%3)]

2、map(參數1,參數2)參數二代入到參數1中計算返回計算值的集合

模擬zip()將兩個序列打包成元素為列表的形式

>>> list(map(lambda x, y : [x, y], [1, 3, 5, 7, 9], [2, 4, 6, 8, 10]))
[[1, 2], [3, 4], [5, 6], [7, 8], [9, 10]]

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM