람다 함수의 이해 및 사용하기 (24:38)
lambda 함수
- 단일문 표현 익명함수
- 구현체만 존재함
- 1회성 으로 만들어서 쓸 때 사용함
# lambda
square = lambda x : x**2
print( type (square) )
square(5)
# def 함수 정의
def add(x, y):
return x + y
# 함수 정의 없이 구현
add2 = lambda x, y : x+y
add2(10,20)
# sort
# 문자열의 길이 반환
def str_len(s):
return len(s)
print(str_len('test'))
strings = ['bob', 'charles', 'alexander3', 'teddy']
#strings.sort(key=str_len) # 문자열 길이로 정렬함
strings.sort(key=lambda s : len(s) )
print (strings)
# 문자열의 길이로 정렬하고자 할 때,
filter, map, reduce 함수 + lambda 함수
# filter, list에서 filtering할 때, 필요함
# filter( #함수 , #리스트 )
nums = [1,2,3,6,8,9]
list ( filter(lambda n: n%2==0, nums) )
# map, list에서 filter 안하고 새로운 list 생성함
#map(함수, 리스트)
list ( map(lambda x : x**2, nums ) )
def even(x):
if x % 2 == 0 :
return True
else :
return False
list(map(even, nums))
# reduce : 리스트 앞 2개씩 연산해서 1개의 값만 남긴다
import functools
a = [1,3,5,8]
functools.reduce(lambda x, y : x+y ,a)
연습문제
1. 리스트의 평균
2.
3. ㅇㅇ
'DS > fast campus daily report' 카테고리의 다른 글
7.6 (데이터엔지니어링) 모듈의 이해 및 사용과 import 방법, 클래스 오브젝트 이해하기, 클래스 정의 및 사용하기 (0) | 2020.07.06 |
---|---|
7.5 (데이터엔지니어링) 컬렉션 타입 이해 -3 (tuple), 함수 연습 문제 풀이 (0) | 2020.07.05 |
7.3 (데이터엔지니어링) 기본 파라미터, 키워드 파라미터 이해, 변수의 스코프 이해-2, 3 (0) | 2020.07.03 |
7.2 (데이터엔지니어링) 함수의 이해 및 활용, 기본 파라미터 , 키워드 파라미터 이해 (0) | 2020.07.02 |
7.1 (데이터엔지니어링) 반복문 이해하기 for, 연습문제 풀이 (0) | 2020.07.01 |