Python 2.6에서 내 자신의 (아주 간단한) 예외 클래스를 정의하려고하는데, 아무리해도 경고를받습니다.PyLint를 사용하지 않고 Python에서 예외를 정의하는 "올바른"방법
첫째, 가장 간단한 방법 :
class MyException(Exception):
pass
이 작동하지만, 런타임에 경고를 출력 : DeprecationWarning: BaseException.message has been deprecated as of Python 2.6 OK, 그 방법이 아니다 그래서.
class MyException(Exception):
def __init__(self, message):
self.message = message
이 또한 작동하지만 PyLint 경고보고 : 나는 다음 시도 W0231: MyException.__init__: __init__ method from base class 'Exception' is not called
을. 그래서 전화 해 보았습니다.
class MyException(Exception):
def __init__(self, message):
super(Exception, self).__init__(message)
self.message = message
이 기능도 작동합니다. 그러나 이제는 PyLint가 오류를보고합니다 : E1003: MyException.__init__: Bad first argument 'Exception' given to super class
경고없이 어떻게 간단한 일을합니까?
'lint'는 경고의 측면에서 항상 오류가있어 사용자가 실제로 신경 쓰지 않는 경고를 생성하고 사용하지 않는 방법을 추가하여 부작용을 시도하는 등 부작용을 유발할 수 있습니다. 어떤 보풀도 불평하지 않는 것은 가치있는 목표는 아니며 모든 불만을 이해하는 것입니다. – msw