코딩공부/파이썬(Python)
Python_클로저와 데코레이터
diary100
2023. 3. 23. 15:41
클로저와 데코레이터
- 함수 안의 함수를 결과로 반환할 때, 그 내부 함수를 클로저라고 함
- 콜백함수,함수의 순차적 실행, 데코레이터 함수에 사용
클로저와 데코레이터는 함수 자체를 고차원적으로 사용할 수 있게 해주는 역할을 해준다. 예시를 보자
이렇게 클래스를 만들어서 사용할 수 있지만 이를 조금 더 간단하게 만들 수 있다. 클로저를 사용하는 방법이다.
쉽게 생각하면 함수안에 함수를 한번더 사용하는 것이다.
●데코레이터
- 함수를 꾸며주는 함수
- 함수를 인수로 받는 클로저
- @(어노테이션)을 이용하여 사용
- 반복되는 작업을 여러 함수의 적용할 경우, 기존 함수를 수정하지 않고 추가 기능을 구현하고 싶은 경우 사용.
계산시간을 만드는 함수를 예시로 사용해 보겠다.
이 상황에서의 코드를 조금 더 간단하게 바꾸어보자
이렇게 사용하여 코드를 짧고 더욱 활용성 있게 사용할 수 있다.