Programming Language/Python

[Python Programming 기초] # 함수의 이해 및 사용 2 : lambda 함수

Lucian_Cho 2020. 11. 18. 00:31

# 함수의 이해 및 사용

 2. lambda 함수

  : 한 줄로 표현되는 함수, return을 쓰면 X

  ex) square = lambda x:x**2                            def square2(x):

       square(5)                              <=>                return x**2

       => 25                                                  square2(5)

                                                                 => 25

  ex) add = lambda x,y:x+y

       add(10, 20)

       => 30

 

  - lambda가 유용하게 사용되는 대표적 3가지 함수

 

   (1) filter : 특정 조건을 만족하는 요소만 남기고 필터링

       → filter(함수, 리스트)

    ex) nums = [1, 2, 3, 6, 8, 9, 10, 11, 13, 15]

         list(filter(lambda n:n%2==0, nums))

         => [2, 6, 8, 10]

 

   (2) map : 각 원소를 주어진 수식에 따라 변형하여 새로운 리스트를 반환

      → map(함수, 리스트)

    ex) nums = [1, 2, 3, 4]

         list(map(lambda n:n**2, nums))

         => [1, 4, 9, 16]

 

   (3) reduce : 차례대로 앞 2개의 원소를 가지고 연산하고 마지막에 한 개 값 출력 (내장 함수 X, import 필요)

       import functools

          functools.reduce(함수, 리스트)

    ex) # 리스트 내의 모든 숫자의 곱

         import functools

         a = [1, 3, 5, 8]

         functools.reduce(lambda x,y:x*y, a)

         => 120

 

 

본 포스팅은 Fast Campus 머신러닝과 데이터 분석 A-Z 강의를

듣고 정리한 내용을 담고 있습니다.