python中filter、map、lambda

今天在作python練習題的時候,作到了map和filter的用法,發現map和filter在python2和python3裏並不同python

在python2中他們兩個返回的都是列表,但在python3中他們返回的都是迭代器函數

因此若是在用他們來對列表進行操做的話,咱們必須用list函數來說他們轉化成列表code

在用到他們兩個時,我發現lambda函數和他們應該是常常搭配使用,由於前兩個函數參數都是函數,不能是表達式it

因此咱們若是用lambda函數就不須要再在外面單獨建個函數io

def function(x):
    return x**2 #參數平方
new_list=list(map(function,iterable))
------------------------------------上面未使用lambda
new_list=list(map(lambda x:x**2,iterable))
#在這使用lambda,一句語句就夠了,增長簡潔性
相關文章
相關標籤/搜索