람다 표현식은 흔히 이름없는 함수라 불리며, 이것을 이용하면 함수를 간단하게 작성할 수 있다.

특정 기능을 수행하는 함수를 한 줄에 작성할 수 있다는 점이 특징이다.

# 일반적인 add() 메서드 사용
def add(a,b):
	return a+b
    
# 람다 표현식으로 구현한 add() 메서드
print((lambda a,b:a+b)(3,7))

※ (lambda 변수명: 연산식)(변수명)

 

# 내장 함수에서 자주 사용되는 람다 함수

array = [('홍길동', 50), ('이순신', 32), ('아무개', 74)]


def my_key(x):
    return x[1]


print(sorted(array, key=my_key))
print(sorted(array, key=lambda x: x[1]))

보통 정렬 함수의 경우에는 한번만 사용하고 다시 사용하는 경우가 없는 경우가 많다. 따라서 람다함수를 이용하도록  하자.

 

- 결과 화면

 

# 여러 개의 리스트에 적용

list1 = [1, 2, 3, 4, 5]
list2 = [6, 7, 8, 9, 10]

result = map(lambda a, b: a + b, list1, list2)

print(list(result))

list1와 list2에 lambda 함수가 적용되어 list1=a , list2=b의 변수에 매핑되어 연산이 이루어이게 된다.

따라서 서로 다른 리스트가 인덱스가 같은 원소끼리 더하기를 수행하게 되는 것이다.

 

 map(각각의 변수에 적용할 함수, 변수명들)

 

- 결과 화면

 

 

+ Recent posts