Language/python
[python] lambda(λλ€) ννμ
νμ€
2021. 6. 25. 22:37
π λλ€ ννμμ΄λ
λλ€ ννμμ μ ννλ‘ μ΄λ£¨μ΄μ Έμλ€.
ν¨μλ₯Ό κ°νΈνκ² μμ±ν μ μμ΄μ λ€λ¦ ν¨μμ μΈμλ‘ λ£μ λ μ£Όλ‘ μ¬μ©λλ€.
π λλ€ ννμμΌλ‘ ν¨μ λ§λ€κΈ°
βοΈ def ν¨μ ννμμΌλ‘ ν¨μ λ§λ€κΈ°
def plus_ten(x):
return x + 10
print(plus_ten(1))
# 11
βοΈ λλ€ ννμμΌλ‘ μμ±νκΈ°
lambda λ§€κ° λ³μλ€: λ°νν μ
plus_ten = lambda x: x + 10
print(plus_ten(1))
# 11
βοΈ λλ€ ννμ μ체λ₯Ό νΈμΆνκΈ°
(lambda λ§€κ°λ³μλ€: μ)(μΈμλ€)
print((lambda x: x + 10)(1))
# 11
βοΈ λλ€ ννμ μμλ λ³μλ₯Ό λ§λ€ μ μλ€!
(lambda x: y=10; x+y)(1)
# SyntaxError: invalid syntax
βοΈ λλ€ ννμ λ°κΉ₯μ λ³μλ₯Ό μ¬μ©ν μ μμ
y = 10
print((lambda x: x+y)(1))
# 11
π λλ€ ννμμ μΈμλ‘ μ¬μ©νκΈ°
βοΈ defν¨μλ‘ mapμ μ¬μ©νκΈ°
def plus_ten(x):
return x + 10
list(map(plus_ten, [1, 2, 3]))
# [11, 12, 13]
βοΈ λλ€ ννμμ mapμ μ§μ λ£κΈ°
list(map(lambda x: x + 10, [1, 2, 3]))
# [11, 12, 13]