์ค๋์ lambda ํจ์์ ๋ํด์ ๋ค๋ค๋ณผ ์์ ์ด๋ค
์ด ๊ธ๋ ๋ง์ฐฌ๊ฐ์ง๋ก ๋น์ ๊ณต์๋ค๋ ์ดํดํ๊ธฐ ์ฝ๊ฒ ์์ฑํด ๋ณผ ์์ ์ด๋ค
๋๋ค(lambda) ํจ์๋ ๋ฌด์์ธ๊ฐ?
ํ์ด์ฌ์์ ํจ์๋ฅผ ๋ง๋๋ ๋ฐฉ๋ฒ์ ์๋ ๋ฐฉ๋ฒ์ด ๊ฐ์ฅ ์ต์ํ ๊ฒ์ด๋ค
def add(x, y):
return x + y
๊ทผ๋ฐ ์ด๋ฐ ๊ฐ๋จํ ํจ์๋ ๊ตณ์ด ์ ๋ ๊ฒ ๋ง๋ค์ง ์๊ณ lambda๋ก ๋ง๋ค ์ ์๋ค
add = lambda x, y: x + y
ํ๋ง๋๋ก lambda๋ ํ์ด์ฌ์์ ํจ์๋ฅผ ๊ฐ๋จํ๊ฒ ๋ง๋๋ ๋ฐฉ๋ฒ ์ค ํ๋์ด๋ค.
๋๋ค(lambda)์ ๊ธฐ๋ณธ ํํ
๋๋ค์์ ๊ธฐ๋ณธ ํํ๋ ์ด๋ ๊ฒ ์๊ฒผ๋ค
lambda ๋งค๊ฐ๋ณ์๋ค: ํํ์
add = lambda x, y: x + y
๊ทธ๋์ ์์ ์ฝ๋์ฒ๋ผ x, y๊ฐ ๋งค๊ฐ๋ณ์๋ค์ด๊ณ
ํํ์์ x + y์ด๋ค
๊ฐ๋จํ ์กฐ๊ฑด๋ฌธ์ ์ฌ์ฉํ๋ lambda
๊ฐ๋จํ ์กฐ๊ฑด์ ๋ฐ๋ผ ๊ฐ์ ๋ฐํํ๋ ๊ฒฝ์ฐ์๋ ์ฌ์ฉํ ์ ์๋ค
์์:
check_positive = lambda x: "Positive" if x > 0 else "Non-positive"
print(check_positive(5)) # ์ถ๋ ฅ: Positive
print(check_positive(-3)) # ์ถ๋ ฅ: Non-positive
print(check_positive(0)) # ์ถ๋ ฅ: Non-positive
Key๋ฅผ ์ฌ์ฉํ๋ ๋๋ค์
์ผ๋ฐ์ ์ผ๋ก sorted() ํจ์๋ฅผ ์ฌ์ฉํด์ ๋ฆฌ์คํธ๋ฅผ ์ ๋ ฌํ ๋
์ ๋ ฌ์ ๊ธฐ์ค์ ์ ๊ณตํ๊ธฐ ์ํด์ ๋๋ค์์ ์ฌ์ฉํ๋ค
์๋ฅผ ๋ค์ด, ๋ฆฌ์คํธ ์์ ์๋ ํํ๋ค์ ์ฒซ ๋ฒ์งธ ์์๋ฅผ ๊ธฐ์ค์ผ๋ก ์ ๋ ฌํ๊ณ ์ถ๋ค๋ฉด?
data = [(3, 'apple'), (1, 'banana'), (2, 'orange')]
# ์ฒซ ๋ฒ์งธ ์์๋ฅผ ๊ธฐ์ค์ผ๋ก ์ ๋ ฌ
sorted_data = sorted(data, key=lambda x: x[0])
print(sorted_data)
์ถ๋ ฅ ๊ฐ์ ์ด๋ ๊ฒ ๋์จ๋ค
[(1, 'banana'), (2, 'orange'), (3, 'apple')]
๋ง์ฝ์ ๋ ๋ฒ์งธ ์์๋ฅผ ๊ธฐ์ค์ผ๋ก ์ ๋ ฌํ๊ณ ์ถ๋ค๋ฉด?
data = [(3, 'apple'), (1, 'banana'), (2, 'orange')]
# ๋ ๋ฒ์งธ ์์๋ฅผ ๊ธฐ์ค์ผ๋ก ์ ๋ ฌ
sorted_data = sorted(data, key=lambda x: x[1])
print(sorted_data)
์ถ๋ ฅ ๊ฐ์?
[(3, 'apple'), (1, 'banana'), (2, 'orange')]
'Python' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| Python์ append()์ extend()์ ์ฐจ์ด (0) | 2024.02.13 |
|---|