← 목록

Python 문법 중급반 문제

Lv.4 Python stdin/stdout
문제 설명
함수 실행 횟수 제한 클래스 데코레이터

LMS 서버에는 동일한 작업이 지나치게 많이 실행되지 않도록 함수의 실행 횟수를 제한하는 기능이 필요합니다.

함수에 설정된 최대 실행 횟수를 기억하고, 실행 횟수가 제한에 도달하면 원본 함수를 더 이상 실행하지 않는 클래스 데코레이터 CallLimiter를 작성하세요.


조건 :
1. CallLimiter는 클래스 기반 데코레이터입니다.
2. max_calls는 함수를 실행할 수 있는 최대 횟수입니다.
3. 함수가 정상 실행될 때마다 실행 횟수를 1 증가시킵니다.
4. 실행 횟수가 max_calls에 도달하면 원본 함수를 실행하지 않고 "실행 횟수 제한 초과"를 반환합니다.
5. 원본 함수의 반환값은 그대로 반환합니다.
6. 위치 인자와 키워드 인자를 모두 처리해야 합니다.
7. solution()은 각 요청의 처리 결과를 리스트로 반환합니다.

제한사항:
1 ≤ max_calls ≤ 100
1 ≤ requests의 길이 ≤ 1,000
1 ≤ requests의 원소 ≤ 10,000

출력 결과 :
입력
3, [101, 102, 103, 104, 105]

출력
101번 요청 처리 완료
102번 요청 처리 완료
103번 요청 처리 완료
실행 횟수 제한 초과
실행 횟수 제한 초과
솔루션 Python
실행 결과
실행 또는 제출하면 결과가 여기에 표시됩니다.