2013-07-23 3 views
6

nach Python-Dokumenten definieren, Ausnahme wird von BaseExceptions abgeleitet und ich sollte es für benutzerdefinierte Ausnahmen verwenden. so ich habe:Ich bekomme "TypeError: Ausnahmen müssen von BaseException abgeleitet werden", obwohl ich es

class VisaIOError(Exception): 

    def __init__(self, error_code): 
     abbreviation, description = _completion_and_error_messages[error_code] 
     Error.__init__(self, abbreviation + ": " + description) 
     self.error_code = error_code 

Und

raise(visa_exceptions.VisaIOError, status) 

aber ich bekomme (Trackback-Schnipsel):

File "C:\Python32\Lib\site-packages\pyvisa\vpp43.py", line 400, in check_status 

    raise(visa_exceptions.VisaIOError, status) 
    TypeError: exceptions must derive from BaseException 

Anmerkung: Ich bin Umwandlung Code von Python 27 bis 32

Antwort

4

I tun müssen:

raise visa_exceptions.VisaIOError(status) 
+2

Ja. Sie haben versucht, ein Tupel zu erzeugen: '(visa_exceptions.VisaIOError, status)'. Da kam der 'TypeError' ins Spiel. – kindall

Verwandte Themen