• 회원가입
  • 로그인
  • 구글아이디로 로그인

[basic] Python - Lambda (람다함수) - 작은 1회용 익명함수

865  

목차

  1. Lambda 함수 정의
  2. Lambda 함수 구문
  3. Lambda 함수 사용 이유

 

Lambda 함수 정의


1. Lambda 함수는 작은 1회용 익명 함수

2. 여러 독립변수 가능하나, 표현식은 오직 1개만 가능.

 

PS. 주의: 알파벳 L 로 시작하며, 중간에 묵음 b 있음. 

 

Lambda 함수 구문


lambda arg1, arg2, ... : expression

 


[코드 설명]

 

arg1, arg2, ....

매개변수. (※ 여러 개 가능.)

주의: 독립변수를 소괄호로 안 감쌈.

 

expression

전달받은 독립변수 이용한 표현식.

주의: 값 반환에 return 사용 안 함.

 


[반환값]

 

독립변수 받아 표현식 실행 후 결과 반환.

 


[예제]

 

# 독립변수 1개인 경우.

x = lambda a: a + 4

print(x(3)) # 7


# 독립변수 2개인 경우.

x = lambda a, b: a * b

print(x(3, 4)) # 12

 

# 독립변수 3개인 경우.

x = lambda a, b, c: a + b + c

print(x(1, 2, 3)) # 6

 

 

Lambda 함수 사용 이유

1. 람다 함수는 일반함수 안에서 익명함수로 사용할 때 유용. ★

 

1.

하나의 매개변수 취하는 일반함수 있고, 

해당 매개변수에 미지의 수가 곱해진다고 가정.

(예)

def hz(n):

  return lambda a : a * n

 

2.

독립변수의 2배 함수

def hz(n):

  return lambda a : a * n

b = hz(2)

print(b(10))  # 20

 

3.

독립변수의 3배 함수

def hz(n):

  return lambda a : a * n

c = hz(3)

print(c(10))

 

4.

독립변수 2배와 3배 함수 동시.

def hz(n):

  return lambda a : a * n

b = hz(2)

c = hz(3)

print(b(10)) # 20

print(c(10)) # 30

 

 


2. 짧은 시간 동안 익명함수 필요 시, 람다 함수 사용. ★

 

(예) a의 b승 구하기

print((lambda a, b: a**b) (2, 4)) # 16

 


3. List에 넣어 사용 가능.

 

방법1.

hz = [lambda x : x*10, lambda x : x*100]

print(hz[0](10)) # 100

print(hz[1](10)) # 1000

 

방법2.

a = lambda x : x*10

b = lambda x : x*100

hz = [a, b]

print(hz[0](10)) # 100

print(hz[1](10)) # 1000

 



분류 제목
mysql Python - MySQL Create Table (테이블 생성)
mysql Python - MySQL Insert Into Table (데이터 삽입)
mysql Python - MySQL Select From (데이터 선택)
mysql Python - MySQL Where (조건절)
mysql Python - MySQL Order By (정렬순서)
mysql Python - MySQL Delete From (데이터 삭제)
mysql Python - MySQL Drop Table (테이블 삭제)
mysql Python - MySQL Update (데이터 수정)
mysql Python - MySQL Limit (데이터 출력개수)
mysql Python - MySQL Join (테이블 결합)
mongodb Python - MongoDB start (설치・연결)
mongodb Python - MongoDB Create Database (DB 생성)
mongodb Python - MongoDB Create Collection (컬렉션 생성)
mongodb Python - MongoDB Insert (데이터 삽입)
mongodb Python - MongoDB Find (데이터 찾기)
mongodb Python - MongoDB Query (검색 쿼리)
mongodb Python - MongoDB Sort (데이터 정렬)
mongodb Python - MongoDB Delete (데이터 삭제)
mongodb Python - MongoDB Drop Collection (컬렉션 삭제)
mongodb Python - MongoDB Update (데이터 수정)
3/24
목록
찾아주셔서 감사합니다. Since 2012