반응형
저는 개인적인 코딩을 할 때는 사실 Python 데코레이터를 거의 사용해 본 적이 없었습니다. 아래 글의 예제에서 설명하는 것과 같이 클래스 사용시 classmethod, staticmethod 정도가 제가 사용해 본 파이썬 데코레이터 전부였던 것 같습니다.
https://dojang.io/mod/page/view.php?id=2427
그런데 코딩 관련 유튜브를 보다 보니 아래 동영상에서 데코레이터 사용의 굉장히 유용한 예제를 발견할 수 있었습니다.
위 동영상은 피보나치 코드 예제인데~ 재귀함수 속도 향상을 위해서 이전 값을 저장하는 경우 functools 모듈의 cache, lru_cache 를 사용하여 조금 더 편리하게 구현하는 예제입니다.
원저자의 코드는 아래 주소에서 확인할 수 있습니다.
현재 저는 파이썬 3.8 버전을 사용하고 있는데 'cache' 의 경우 아래와 같이 에러가 나더군요.
ImportError: cannot import name 'cache' from 'functools'
그래서 lru_cache 만 임포트를 해서 코드를 실행해 봤고, 위 동영상에서 본 것과 같이 굉장히 빠르게 실행 되는 것을 확인할 수 있었습니다.
데코레이터의 유용성에 대해서 알게 돼서 좋았네요.
반응형
'programming language > Python' 카테고리의 다른 글
Python 으로 한글 초성 확인 방법 jamo (0) | 2022.12.11 |
---|---|
Python 셀레늄 열려있는 브라우저 자동화하기 (949) | 2022.08.28 |
IPython 세팅 파일 위치 (0) | 2021.12.25 |
Python 을 사용하여 숫자를 글자로 읽기 (0) | 2021.10.20 |
Python 주식 시장 개장일/휴장일 대체휴일 확인하기 (0) | 2021.10.11 |
Python 주가의 지지선 저항선을 찾는 방법 (587) | 2021.10.10 |
Python 주식 시장 개장일/휴장일 확인하기 (0) | 2021.09.23 |
Python exe 파일 만들기 PyInstaller, auto-py-to-exe (6) | 2020.07.05 |
댓글