2021년 5월 10일 월요일

파이썬 람다 문법을 알아본다.


리스트의 단어들중에 s가 없는 애들을 필터링 하고싶다. 

words = ['soup','dog','salad','cat','great']





문자열이 있는 리스트에서 's' 스펠링이 없는 애들만 필터링 하겠다.


list(filter(lambda k: 's' not in k, words ))

k는 위 구문에서 임의로 만든 변수라고 생각하면 됨



리스트의 단어들중 s로 시작하지 않는 애들을 필터링 하고싶다면

조건을 startswith 함수 사용


list(filter(lambda k: not k.startswith("s"), words))




리스트(필터(람다 변수 : 조건, 리스트_변수))



자주 사용하여 익히면 복잡한 함수를 사용 하는것보다 훨씬 간단한 코드를 만들 수 있다.



특정 이메일을 받아서 그걸 도메인만 추출하고싶다면


1.  반복문으로 함수를 만든다면


def domainGet(email):

     words = email.split("@")

     for w in words:

         if  w.endswith('.com'):

             result = w  

     return result


2. 람다를 사용한다면

def domainGet(email):

    e = email.split("@")

    return (list(filter(lambda w : w.endswith('.com'), e )))


재미를 붙여보자 억지로라도 ㅎㅎ


댓글 없음: