Python/Python Language

๋žŒ๋‹ค(Lambda) : ์ต๋ช… ํ•จ์ˆ˜ ๊ฐœ๋… ์„ค๋ช…

567Rabbit 2024. 4. 24. 13:57

Lambda
์ธ์ˆ˜๋ฅผ ์—ฌ๋Ÿฌ๊ฐœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ํ‘œํ˜„์‹์„ ํ•˜๋‚˜๋งŒ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋Š” ์ต๋ช… ํ•จ์ˆ˜

๋žŒ๋‹คํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ 
๋‹ค๋ฅธ ํ•จ์ˆ˜ ๋‚ด์—์„œ ์ต๋ช…ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ• ๋•Œ ๋” ์ž˜ ๋“œ๋Ÿฌ๋‚œ๋‹ค

 


#1)
q = lambda a: a + 10
print(q(5)) #=> 15

 


#2) ์ธ์ˆ˜ a,b๋ฅผ ์š”์•ฝํ•˜๊ณ  ๊ฒฐ๊ณผ๋ฅผ ๋ฆฌํ„ด
x = lambda m, n, b : m + n + b
print(x(5,6,3))

 


#3) ๋™์ผํ•œ ํ•จ์ˆ˜๋ฅผ ์ •์˜ํ•˜์—ฌ ๋™์ผํ•œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์—์„œ ๋‘๊ธฐ๋Šฅ์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค ํ•จ์ˆ˜๋ฅผ ๋งŒ๋“ค๊ณ  ๋ณ€์ˆ˜ ๋‘๊ฐœ๋ฅผ ์„ค์ •ํ•˜์—ฌ ๊ฐ’์„ ๋ฆฌํ„ด
def cuc(n):
    return lambda z : z * n


mydoubler = cuc(2)
mytripler = cuc(3)

 

print(mydoubler(11))
print(mytripler(11))