본문 바로가기
Programming/python

python, lambda, map, reduce 함수 사용법

by 단창 2019. 8. 19.

lambda

임의의 간단한 함수 lambda(람다) 을 지정해서 사용가능 

lambda 인자 : 해당인자로 연산 

이러한 형식을 가짐

ex)

fun1 = lambda x : x*x

 

def fun1(x):

    return x*x

 

와 같다. 

 

sorted 함수 내에 key 값으로 사용됨. 

 

A = [ 3,6,1, -10, 9]

B = sorted(A,key=lambda x: x*x , reverse=True)

하면 B는 A의 각 원소의 제곱을 기준으로 내림차순정렬됨. 

 

 

map

map은 map(함수,리스트) 의 형식을 취함. 리스트의 인자를 하나씩 함수에 넣고, 그 결과를 리턴함

list(map(lambda x : x**2 , range(5)))

>> [0,1,4,9,16]

 

 

reduce

 

from functools import reduce 

reduce(lambda x ,y : x+ y , range(5))

>> 10

 

연쇄적으로 계산함. 

즉 

((((0+1) + 2 ) +3) +4) 을 계산.

 

반응형