리스트의 단어들중에 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 )))
재미를 붙여보자 억지로라도 ㅎㅎ
댓글 없음:
댓글 쓰기