๐ Lambda
- ํจ์ ์ด๋ฆ์์ด ์ฌ์ฉํ ์ ์๋ ์ต๋ช
ํจ์
- python3๋ถํฐ ๊ถ์ฅํ์ง ์์.
# General function
def f(x, y):
return x+y
print(f(1,2))
# 3
# Lambda function
f = lambda x ,y:x+y
print(f(1,3))
# 4
๐ Map()
- Sequence ์๋ฃํ ๊ฐ element์ ๋์ผํ function์ ์ ์ฉํจ
ex = [1,2,3,4,5]
f = lambda x:x**2
print(list(map(f, ex)))
# [1, 4, 9, 16, 25]
ex = [1,2,3,4,5]
t = lambda x, y:x+y
print(list(map(t, ex, ex)))
# [2, 4, 6, 8, 10]
print(list(map(lambda x: x**2 if x%2==0 else x, ex)))
# [1, 4, 3, 16, 5]
๐ Reduce()
- map function๊ณผ ๋ฌ๋ฆฌ list์ ๋๊ฐ์ ํจ์๋ฅผ ์ ์ฉํ์ฌ ํตํฉํจ
from functools import reduce
print(reduce(lambda x, y: x+y, [1,2,3,4,5]))
# 15
def factorial(n):
return reduce(lambda x, y: x*y, range(1, n+1))
factorial(5)
# 120