filter()

CODEDRAGON Development/Python

반응형



 

 

filter()

·         list dictionary 같은 iterable 데이터를 특정 조건에 일치하는 값만 추출해 낼때 사용하는 함수

·         함수의 결과 값이 참인 시퀀스 객체의 이터레이터를 반환합니다.

·         None 오는 경우 필터링하지 않습니다.

 

 

 

filter(<function>|None, 시퀀스 객체)

filter(function, iterable)

 

parameter

description

function

수행할 함수

iterable

시퀀스 자료형

 

 

def func(x):

 

   if x > 0:

 

     return x

 

   else:

 

     return None

 

 

 

list(filter(func, range(-5,10)))

 

 

 

>>> [1, 2, 3, 4, 5, 6, 7, 8, 9]

 

 

 

 

 

 

람다를 이용하여 구현

list(filter(lambda x: x > 0, range(-5,10)))

 

>>> [1, 2, 3, 4, 5, 6, 7, 8, 9]

 

 

 

 

리스트 내포를 이용하여 구현

ambda filter 이용한 표현 방식은 리스트 내포를 이용해서도 충분히 구현가능합니다.

[ i for i in range(-5,10) if i > 0 ]

 

>>> [1, 2, 3, 4, 5, 6, 7, 8, 9]

 

 

 


반응형

'Development > Python' 카테고리의 다른 글

Generator function(제네레이터 함수)  (0) 2020.02.15
시퀀스/매핑 자료형의 연산자 중복  (0) 2020.02.15
sys.getrefcount()  (0) 2020.02.15
boxplot()  (0) 2020.02.14
객체 생성  (0) 2020.02.14