파이썬 데코레이터 제대로 쓰기
데코레이터는 함수를 받아 함수를 돌려주는 함수 다. 이걸 빼면 감싼 함수의 이름과 독스트링이 사라진다. 디버깅할 때 반드시 후회한다. 데코레이터에 옵션을 주려면 한 겹을 더 감싼다. 처음엔 헷갈리지만 "함수를 돌려주는 함수를 돌려주는 함수"로 생각하면…
조회 0댓글 0개발/python
3개
데코레이터는 함수를 받아 함수를 돌려주는 함수 다. 이걸 빼면 감싼 함수의 이름과 독스트링이 사라진다. 디버깅할 때 반드시 후회한다. 데코레이터에 옵션을 주려면 한 겹을 더 감싼다. 처음엔 헷갈리지만 "함수를 돌려주는 함수를 돌려주는 함수"로 생각하면…
CPU가 아니라 네트워크·디스크를 기다리는 작업이라면 asyncio 가 답이다. GIL 때문에 파이썬 스레드는 CPU 작업에서 진짜 병렬이 안 된다. 하지만 I/O 대기 중엔 GIL을 놓으므로, I/O 바운드에선 asyncio도 스레드도 잘 동작한다.…
파이썬은 동적 언어지만, 타입 힌트를 붙이면 IDE와 mypy가 실수를 미리 잡아준다. 타입 힌트는 실행에 전혀 개입하지 않는다. 오직 정적 분석 도구를 위한 것이다. 그래서 부담 없이 점진적으로 도입할 수 있다. 공개 함수의 시그니처부터 붙이자. 내…