πlambda ν¨μλ?
νμ΄μ¬μμμ lambda ν¨μλ μ΅λͺ ν¨μλ₯Ό μμ±νκΈ° μν λ°©λ²μ λλ€. μ¦, μ΄λ¦ μμ΄, ν μ€μ κ°λ¨ν μ½λλ‘ ν¨μλ₯Ό μ μν μ μμ΅λλ€. lambda ν¨μλ κ°λ¨ν μ°μ°μ΄λ λ€λ₯Έ ν¨μμ μΈμλ‘ μ λ¬λλ ν¨μ λ±μ λΉ λ₯΄κ² μ μν λ μ μ©νκ² μ¬μ©λ©λλ€.
lambda arguments: expression
μ¬κΈ°μ argumentsλ ν¨μλ‘ μ λ¬λλ μΈμλ€μ μλ―Ένκ³ , expressionμ ν΄λΉ μΈμλ€μ μ¬μ©ν΄ μνλλ μμ μλ―Έν©λλ€. μ΄ μμ κ³μ° κ²°κ³Όκ° lambda ν¨μμ λ°ν κ°μ΄ λ©λλ€. λ¨, expressionμ λ¨μΌ μλ§μ ν¬ν¨ν μ μμΌλ©°, 볡μμ λͺ λ Ήμ΄λ 쑰건문, λ°λ³΅λ¬Έ λ±μ μ§μ ν¬ν¨ν μ μμ΅λλ€. κ·Έλ¬λ μ λ΄μμλ μ‘°κ±΄λΆ ννμμ μ¬μ©ν μ μμ΅λλ€.
μμλ₯Ό ν΅ν΄ λ μ΄ν΄λ³΄κ² μ΅λλ€:
- λ μλ₯Ό λνλ lambda ν¨μ:
add = lambda x, y: x + y
print(add(5, 3))
# μΆλ ₯: 8
2. 리μ€νΈμ κ° μμμ 10μ κ³±νλ lambda ν¨μ:
numbers = [1, 2, 3, 4]
multiplied = list(map(lambda x: x * 10, numbers))
print(multiplied)
# μΆλ ₯: [10, 20, 30, 40]
lambda ν¨μλ νΉν filter(), map(), reduce() λ±μ κ³ μ°¨ ν¨μμ ν¨κ» μ¬μ©λ λ μ μ©ν©λλ€. μ΄ ν¨μλ€μ μΌλ°μ μΌλ‘ ν κ° μ΄μμ ν¨μλ₯Ό μΈμλ‘ λ°μΌλ©°, lambda ν¨μλ₯Ό μ¬μ©νλ©΄ μ½λλ₯Ό λ κ°λ¨ν μμ±ν μ μμ΅λλ€.
lambda ν¨μμ μ¬μ©μ μ½λλ₯Ό κ°κ²°νκ² λ§λ€ μ μλ μ₯μ μ΄ μμ§λ§, 볡μ‘ν λ‘μ§μ κ²½μ° κ°λ μ±μ ν΄μΉ μ μμΌλ―λ‘ μ μ ν μν©μμ μ¬μ©νλ κ²μ΄ μ’μ΅λλ€.
νμ΄μ¬μ map()ν¨μλ μλ°μ€ν¬λ¦½νΈμμ map()ν¨μμ λ€λ₯΄κ² λ κ°μ μΈμλ₯Ό λ°λλ° μ²« λ²μ§Έ μΈμλ ν¨μμ΄κ³ , λ λ²μ§Έ μΈμλ λ°λ³΅ κ°λ₯ν κ°μ²΄(μ΄ μμ μμλ 리μ€νΈ numbers)μ λλ€.
map() ν¨μμ κ²°κ³Όλ map κ°μ²΄μ΄λ©°, μ΄λ λ°λ‘ 리μ€νΈκ° μλλλ€. λ°λΌμ list() ν¨μλ₯Ό μ¬μ©νμ¬ map κ°μ²΄λ₯Ό 리μ€νΈλ‘ λ³νν©λλ€. μ΄λ κ² νμ¬ μ΅μ’ μ μΌλ‘ numbers 리μ€νΈμ κ° μμμ 10μ κ³±ν μλ‘μ΄ λ¦¬μ€νΈκ° μμ±λ©λλ€.
'Backend > Python' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
python =κ³Ό == μ°¨μ΄ / != μ !==μ μ°¨μ΄ (1) | 2023.10.18 |
---|