python——filter()、map()関数の使い方

2376 ワード

filter()関数は何ですか.
filter(func, iterable) 

filter func , bool ,

bool True


# range(10)        
a = list(filter(lambda x : x % 2,range(10)))#   2   1,bool  True,filter       
print(a)#[1, 3, 5, 7, 9]

 
map()関数は何ですか.
map(func, iterable) 

map() 。

function function , function 。


# range(10)    *2      
b = list(map(lambda x:x*2,range(10)))
print(b)#[0, 2, 4, 6, 8, 10, 12, 14, 16, 18]

普通の書き方
#    
c=[x*2 for x in range(10)]
print(c)

一つ一つ対応する操作を使う必要がある場合はmap()関数を使うと便利です
#
ls1 = [1,2,3]
ls2 = [2,3,4]
d = list(map(lambda x,y:x+y,ls1,ls2))#
print(d)#[3, 5, 7]