๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

๊ฐœ๋ฐœ/Python

Advanced Python #3 [Notion : 1/3]

๐Ÿ‘‰ 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

'๊ฐœ๋ฐœ > Python' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

Advanced Python #5 [Notion : 1/4]  (0) 2023.04.30
Advanced Python #4 [Notion : 1/3]  (0) 2023.04.30
Advanced Python #2 [Notion : 1/3]  (0) 2023.04.30
Advanced Python #1 [Notion : 1/2]  (0) 2023.04.30