데이터분석/Python

<Python> 람다 Lambda Expression

창조적생각 2021. 10. 6. 00:52

 

람다 함수는 기존의 함수를 정의하는 과정을 생략하고 함수를 사용하는 방식이다.

 

7x+1이라는 식을 파이썬으로 함수로 표현하면 아래와 같다.

1
2
3
4
def  f(x):
    return 7x+1
 
 
cs

먼저 f라는 함수의 이름을 정의해주고 소괄호 안에 매개변수 x를 지정해준다.

그리고 함수 f와 매개변수 x의 값을 지정해주면 그 값을 계산할 수 있게 return 값으로 7x+1을 지정해준다.

x의 값이 2라면 그 값은 15가 된다.

1
2
3
4
def  f(x):
    return 7x+1
print("f(x) = 7x+1")
print("f(2) : "+str(f(2)))
cs

[실행결과]

그렇다면 람다함수로는 어떻게 7x+1이 표현이 되는가는 아래와 같다.

1
lambda x: 7*x+1
cs

람다식을 사용하는 방법은 간단하다. 이 람다식을 변수로 지정해주면 된다. 변수명은 'func1'으로 하겠다. 그리고 원하는 x의 값을 소괄호로 표현해 주면 된다. x의 값은 앞과 같이 2로 지정한다.

1
2
func1 = lambda x: 7*x+1
print("func1(2) : " + str(func1(2)))
cs

[실행결과]

매개변수를 여러개로 지정하는 방식 역시 위와 동일하다.

변수명은 'func2'로 하고 매개변수는 x,y로 표현할 식은 3*x+7*y +3으로 지정하겠다.

1
2
func2 = lambda x,y :3*x+7*y+3
print("func2(2,5) : " + str(func2(2,5)))
cs

[실행결과]

 

 

 

728x90