<Python> 람다 함수와 map(), filter() 함수
- Developer/Python
- 2023. 8. 2.
반응형
람다 함수 소개
파이썬의 람다(lambda) 함수는 익명 함수의 개념을 지원하는데 사용되며, 간단한 연산이나 기능을 정의할 때 유용합니다. 람다 함수는 한 줄로 작성되며 다른 함수의 인수로 사용될 수도 있고, 인라인 작업에 활용될 수도 있습니다.
람다 함수는 다음과 같은 구문을 사용하여 정의합니다.
lambda arguments: expression
람다 함수 예시
다음 예는 두 숫자를 더하는 람다 함수입니다.
add = lambda x, y: x + y
print(add(3, 5)) # 출력: 8
람다 함수는 코드를 짧게 작성할 수 있지만, 가독성이 떨어질 수 있으므로 적절한 상황에서 사용해야 합니다.
map() 함수 소개
map()
함수는 주어진 함수를 전달된 모든 요소에 적용한 결과를 반환합니다. 이는 주어진 반복 가능한 객체에 함수를 일괄 적용하여 새로운 결과 집합을 얻는 데 사용됩니다.
map()
함수는 다음과 같은 구문을 사용합니다.
map(function, iterable)
map() 함수 예시
def square(x):
return x * x
numbers = [1, 2, 3, 4, 5]
squared_numbers = map(square, numbers)
print(list(squared_numbers)) # 출력: [1, 4, 9, 16, 25]
이 작업을 람다 함수와 함께 사용하면 더 간결하게 작성할 수 있습니다.
numbers = [1, 2, 3, 4, 5]
squared_numbers = map(lambda x: x * x, numbers)
print(list(squared_numbers)) # 출력: [1, 4, 9, 16, 25]
filter() 함수 소개
filter()
함수는 주어진 함수를 만족하는 요소만 포함하는 새로운 리스트를 반환합니다. 이를 통해 주어진 반복 가능한 객체에서 조건에 맞는 요소만 추출할 수 있습니다.
filter()
함수는 다음과 같은 구문을 사용합니다.
filter(function, iterable)
filter() 함수 예시
def is_even(x):
return x % 2 == 0
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
even_numbers = filter(is_even, numbers)
print(list(even_numbers)) # 출력: [2, 4, 6, 8, 10]
이 작업을 람다 함수와 함께 사용하면 더 간결하게 작성할 수 있습니다.
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
even_numbers = filter(lambda x: x % 2 == 0, numbers)
print(list(even_numbers)) # 출력: [2, 4, 6, 8, 10]
이 글에서는 파이썬의 람다 함수 및 map()
과 filter()
함수에 대해 알아보았습니다.
람다 함수는 코드를 간결하게 작성할 수 있고, map()
과 filter()
함수와 같이 사용하여 리스트 변환 및 필터링 작업을 수행할 수 있습니다.
감사합니다.
'Developer > Python' 카테고리의 다른 글
<Python> 모듈 import와 사용 (0) | 2023.08.03 |
---|---|
<Python> 패키지와 패키지 관리 (0) | 2023.08.03 |
<Python> 함수 작성 및 호출 (0) | 2023.08.01 |
<Python> List Comprehension (1) | 2023.07.31 |
<Python> 반복문과 이터레이터 (0) | 2023.07.31 |