๋ฐ์ฝ”๋ ˆ์ดํ„ฐ 1

[Python] ๋ฐ์ฝ”๋ ˆ์ดํ„ฐ (Decorator)

๋ฐ์ฝ”๋ ˆ์ดํ„ฐ (Decorator) ? - ํ•จ์ˆ˜ ์•ž๋’ค์— ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•ด์„œ ์† ์‰ฝ๊ฒŒ ํ•จ์ˆ˜๋ฅผ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋ฒ• - Closure function - ์—ฌ๋Ÿฌ ํ•จ์ˆ˜์— ๋™์ผํ•œ ๊ธฐ๋Šฅ์„ @๋ฐ์ฝ”๋ ˆ์ดํ„ฐ ํ•˜๋‚˜๋กœ ๊ฐ„ํŽธํ•˜๊ฒŒ ์ถ”๊ฐ€ Closure function ํ•จ์ˆ˜์™€ ํ•ด๋‹น ํ•จ์ˆ˜๊ฐ€ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ํ•จ๊ป˜ ๋ณต์‚ฌ, ์ €์žฅํ•ด์„œ ๋ณ„๋„ ํ•จ์ˆ˜๋กœ ํ™œ์šฉํ•˜๋Š” ๊ธฐ๋ฒ• ์™ธ๋ถ€ ํ•จ์ˆ˜๊ฐ€ ์†Œ๋ฉธํ•˜๋”๋ผ๋„, ์™ธ๋ถ€ ํ•จ์ˆ˜ ์•ˆ์— ์žˆ๋Š” ๋กœ์ปฌ ๋ณ€์ˆ˜ ๊ฐ’๊ณผ ์ค‘์ฒฉํ•จ์ˆ˜(๋‚ด๋ถ€ํ•จ์ˆ˜)๋ฅผ ์‚ฌ์šฉ ๊ฐ€๋Šฅ def outer_func(num): #์ค‘์ฒฉ ํ•จ์ˆ˜์—์„œ ์™ธ๋ถ€ ํ•จ์ˆ˜์˜ ๋ณ€์ˆ˜์— ์ ‘๊ทผ ๊ฐ€๋Šฅ def inner_func(): print(num) return 'hi' return inner_func #์ค‘์ฒฉ(๋‚ด๋ถ€) ํ•จ์ˆ˜ ์ด๋ฆ„์„ ๋ฆฌํ„ด closure_func = outer_func(10) #First-cl..

Python 2024.01.31