데이터베이스 연결 개체가 있는데 쓰기 작업 (함수)에 대한 최대 호출 수를 제한하거나 적용하려고합니다. 테스트에서 조롱했고, write 메소드를 오버라이드하여 호출을 모니터링했다.함수에 대한 초과 호출 플래그에 가장 적합한 Exception 클래스는 무엇입니까?
그러나 최대 허용 개수 (예 : 2) 이상으로 호출 될 때 어떤 오류가 발생하는지 혼란 스럽습니다. docs을 살펴 보았지만 적절한 내용을 찾지 못했습니다. (따라서, 그것이 제시하는대로) 나는 RuntimeError
을 사용했지만, 그것이주는 메시지 (내가 명시하는 메시지가 아니라, 클래스 자체가 전달하는 암묵적인 의미)에 대해 충분히 확신하지 못했습니다. AttributeError
은 아주 잘 맞는 것 같지만 다른 것은 정확함에 가깝습니다.
다른 내부 표준 예외 클래스가 더 적합합니까?
TypeError: function-name takes exactly n arguments (m given)
그래서 파이썬을 미러링 할 동일 할 수있다 : 당신이 함수에 너무 많은 인수를 제공하는 경우
나는 사용자 정의 예외를 만들 것입니다 ... 나는 왜 당신이 내장을 원할 것인지 잘 모르겠습니다. – SuperSaiyan
@SuperSaiyan 네, 저의 최후의 수단입니다. 나는이 라인을 질문에 추가해야했다. :). – 0xc0de
@ 0xc0de : 왜 전화 수를 계산 하시겠습니까? 프로덕션 환경에서이 코드를 실행 하시겠습니까? 왜냐하면 ** MAX ** 통화 횟수 이후에는 항상 예외를 던질 수있는 방법으로 호출 수를 제한하기 때문입니다. 환경을 다시 시작할 때까지이 방법을 열지 않습니다. –