ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 파이썬 - 람다 함수
    python 2021. 3. 16. 23:28

    lambda는 함수를 생성할 때 사용하는 예약어로 def과 동일한 역할을 한다. 람다 표현식은 식 형태로 되어 있다고 해서 람다 표현식(lambda expression)이라고 부른다. 보통 함수를 한줄로 간결하게 만들 때 작성하고 간편하기 때문에 다른 함수의 인수로 넣을 때 자주 사용한다. 

    lambda 매개변수 : 표현식

     

    def으로 표현된 함수를 lambda 표현식으로 바꿔보자

    >>> def plus_ten(x):
    ...     return x + 10
    ...
    >>> plus_ten(1)
    11
    >>> plus_ten = lambda x: x + 10
    >>> plus_ten(1)
    11

    람다 표현식은 변수에 할당하지 않고 표현식 자체를 바로 호출할 수 있다.

    표현식을 괄호로 묶은 뒤에 인수도 괄호로 묶어서 뒤에 배치하면 된다.

    >>> (lambda x: x + 10)(1)
    11

     

    람다 표현식 안에는 변수를 만들 수 없다.

    >>> (lambda x: y=10: x+y)(1)
    SyntaxError: invalid syntax

     

     

    람다 표현식도 일반 함수처럼 조건부 표현식을 사용할 수 있다.

    lambda 매개변수들: 식1 if 조건식 else 식

    (주의점)

    1. 람다 표현식 안에서 조건부 표현식 if, else를 사용할 때는 : (콜론)을 붙이지 않는다. 

    2. if를 사용했다면 반드시 else를 사용해야 한다. (사용하지 않는다면 문법 에러가 발생한다.)

    3. 표현식 안에서는 elif를 사용할 수 없다. if와 else를 조합해서 표현한다.

    'python' 카테고리의 다른 글

    파이썬 - docstring  (0) 2021.03.19
    파이썬 - 이터레이터  (0) 2021.03.18
    파이썬 - 인수(argument)  (0) 2021.03.16
    클래스 - 메서드 오버라이딩과 다형성  (0) 2021.03.11
    클래스 - 클래스 관계  (0) 2021.03.11
Designed by Tistory.