python

파이썬 μ•Œκ³ λ¦¬μ¦˜ κ°•μ˜/ 기초 문법 10: lamda ν•¨μˆ˜

aesup 2021. 9. 26. 23:13
728x90

🎈map ν•¨μˆ˜μ˜ μ‚¬μš©λ²•

map(function, iterable)

 

map ν•¨μˆ˜μ˜ λͺ¨μ–‘은 μœ„μ™€ κ°™μŠ΅λ‹ˆλ‹€.
첫 번째 λ§€κ°œλ³€μˆ˜λ‘œλŠ” ν•¨μˆ˜κ°€ 였고
두 번째 λ§€κ°œλ³€μˆ˜λ‘œλŠ” 반볡 κ°€λŠ₯ν•œ μžλ£Œν˜•(리슀트, νŠœν”Œ λ“±)이 μ˜΅λ‹ˆλ‹€.

map ν•¨μˆ˜μ˜ λ°˜ν™˜ 값은 map객체 이기 λ•Œλ¬Έμ— ν•΄λ‹Ή μžλ£Œν˜•μ„ list ν˜Ήμ€ tuple둜 ν˜• λ³€ν™˜μ‹œμΌœμ£Όμ–΄μ•Ό ν•©λ‹ˆλ‹€.

ν•¨μˆ˜μ˜ λ™μž‘μ€ λ‘ 번째 인자둜 λ“€μ–΄μ˜¨ 반볡 κ°€λŠ₯ν•œ μžλ£Œν˜• (λ¦¬μŠ€νŠΈλ‚˜ νŠœν”Œ)을 μ²« 번째 인자둜 λ“€μ–΄μ˜¨ ν•¨μˆ˜μ— ν•˜λ‚˜μ”© μ§‘μ–΄λ„£μ–΄μ„œ ν•¨μˆ˜λ₯Ό μˆ˜ν–‰ν•˜λŠ” ν•¨μˆ˜μž…λ‹ˆλ‹€.

map(μ μš©μ‹œν‚¬ ν•¨μˆ˜, μ μš©ν•  κ°’λ“€) μ΄λŸ° 식인 κ±°μ£ .
예λ₯Ό λ“€μ–΄ 첫 번째 μΈμžκ°€ 값에 +1을 λ”ν•΄μ£ΌλŠ” ν•¨μˆ˜λΌκ³  ν•˜κ³  λ‘λ²ˆμ§Έ μΈμžμ— [1, 2, 3, 4, 5] λΌλŠ” 리슀트λ₯Ό μ§‘μ–΄λ„£μœΌλ©΄

ν•¨μˆ˜μ˜ λͺ¨μ–‘은 μ•„λž˜μ™€ κ°™κ³ 
map( 값에 +1 을 λ”ν•΄μ£ΌλŠ” ν•¨μˆ˜, [1,2,3,4,5]) 
ν•¨μˆ˜μ˜ λ°˜ν™˜μ„ list(. )둜 감싸주면
[2,3,4,5,6] μ΄ λ˜λŠ” ν•¨μˆ˜μž…λ‹ˆλ‹€.


πŸŽˆλžŒλ‹€ ν‘œν˜„μ‹μ„ μ‚¬μš©ν•˜λ©΄ ν•¨μˆ˜λ₯Ό 일일히 μ‚¬μš©ν•˜λŠ”κ²ƒλ³΄λ‹€ ν•œμ€„λ‘œ κ°€λŠ₯

'''
λžŒλ‹€ ν•¨μˆ˜


def plus_one(x):
    return x+1

print(plus_one(1))


plus_two = lambda  x: x+2
print(plus_two(1))
'''


def plus_one(x):
    return x+1

a=[1,2,3]
print(list(map(plus_one, a)))
print(list(map(lambda x:x+1, a)))
#[2,3,4]
728x90