코딩하는 동안 자주해야합니다.파이썬의 장식자를 통해 예외 클래스 생성하기
class MyClassException(Exception):
def __init__(self, _message):
self.message = _message
class MyClass(object):
def __init__(self, value):
raise MyClassException("What's up?")
는 Exception에서 상속 된 모든 더미 클래스 모두 고유하지만 이름이 아무것도 없기 때문에, 데코레이터 호출을 통해 내 예외 클래스를 가질 수 있도록 좋은 것입니다. 예를 들어 다음과 같은 것이 좋습니다.
@generic_exception_class
class MyClass(object):
def __init__(self, value):
raise MyClassException("What's up?")
데코레이터는 상관없이 나에게
구문
이름 오류를주지 것 호출 될 때까지 MyClassException 선물을 할 수 없기 때문에. 비슷한 방식으로 파이썬에서이 작업을 수행 할 수있는 방법이 있습니까?
데코레이터는 클래스가 인스턴스화되는 즉시 호출됩니다. 문제가 어디 있니? –
미리 정의되지 않은 MyClassException에 의한 구문 오류 – ocivelek
1) 구문 오류가 아닌 이름 오류입니다. 2) 파이썬은'__init __()'가 실제로 호출되기 전에는 존재하지 않는다는 것에 신경 쓰지 않습니다. –