Lambda 함수
- 단일문으로 표현되는 익명 함수
- 익명 함수란 이름이 없는 구현체만 존재하는 간단한 함수를 의미
- 코드 상에서 한 번만 사용되는 기능이 있을 때, 굳이 함수로 만들지 않고 1회성으로 만들어서 쓸 때 사용
square = lambda x:x**2
type(square)
print(square(5))
def add(x, y):
return x + y
add2 = lambda x,y:x+y
add2(10, 20)
strings = ['bob', 'charles', 'alexander3', 'teddy']
# strings.sort(key=str_len)
strings.sort(key=lambda s:len(s))
print(strings)
filter, map, reduce
- lambda가 유용하게 사용되는 3가지 대표적 함수
- 함수형 프로그래밍의 기본 요소이기도 함
- filter : 특정 조건을 만족하는 요소만 남기고 필터링
- map : 각 원소를 주어진 수식에 따라 변형하여 새로운 리스트를 반환
- reduce : 차례대로 앞 2개의 원소를 가지고 연산. 연산의 결과가 또 다음 연산의 입력으로 진행됨. 따라서 마지막까지 진행되면 최종 출력은 한 개의 값만 남게 됨
nums = [1, 2, 3, 6, 8, 9]
def even(n):
return n % 2 == 0
list(filter(even, nums))
nums = [1, 2, 3, 6, 8, 9, 10, 11, 13, 15]
list(filter(lambda n:n%2==0, nums))
# map
# 주어진 리스트, 리스트의 제곱을 한 숫자로 새로운 리스트
nums = [1, 2, 3, 6, 8, 9, 10, 11, 13, 15]
list(map(lambda n:n**2, nums))
nums = [1, 2, 3, 6, 8, 9, 10, 11, 13, 15]
list(map(lambda n:n%2==0, nums))
import functools
a = list(range(1, 11))
# 리스트 내의 모든 숫자의 합
functools.reduce(lambda x,y:x+y, a)

#패스트캠퍼스 #패캠챌린지 #직장인인강 #직장인자기계발 #패스트캠퍼스후기 #딥러닝강의
Lambda 함수
- 단일문으로 표현되는 익명 함수
- 익명 함수란 이름이 없는 구현체만 존재하는 간단한 함수를 의미
- 코드 상에서 한 번만 사용되는 기능이 있을 때, 굳이 함수로 만들지 않고 1회성으로 만들어서 쓸 때 사용
square = lambda x:x**2
type(square)
print(square(5))
def add(x, y):
return x + y
add2 = lambda x,y:x+y
add2(10, 20)
strings = ['bob', 'charles', 'alexander3', 'teddy']
# strings.sort(key=str_len)
strings.sort(key=lambda s:len(s))
print(strings)
filter, map, reduce
- lambda가 유용하게 사용되는 3가지 대표적 함수
- 함수형 프로그래밍의 기본 요소이기도 함
- filter : 특정 조건을 만족하는 요소만 남기고 필터링
- map : 각 원소를 주어진 수식에 따라 변형하여 새로운 리스트를 반환
- reduce : 차례대로 앞 2개의 원소를 가지고 연산. 연산의 결과가 또 다음 연산의 입력으로 진행됨. 따라서 마지막까지 진행되면 최종 출력은 한 개의 값만 남게 됨
nums = [1, 2, 3, 6, 8, 9]
def even(n):
return n % 2 == 0
list(filter(even, nums))
nums = [1, 2, 3, 6, 8, 9, 10, 11, 13, 15]
list(filter(lambda n:n%2==0, nums))
# map
# 주어진 리스트, 리스트의 제곱을 한 숫자로 새로운 리스트
nums = [1, 2, 3, 6, 8, 9, 10, 11, 13, 15]
list(map(lambda n:n**2, nums))
nums = [1, 2, 3, 6, 8, 9, 10, 11, 13, 15]
list(map(lambda n:n%2==0, nums))
import functools
a = list(range(1, 11))
# 리스트 내의 모든 숫자의 합
functools.reduce(lambda x,y:x+y, a)

#패스트캠퍼스 #패캠챌린지 #직장인인강 #직장인자기계발 #패스트캠퍼스후기 #딥러닝강의