RozważmyW jaki sposób mogę łatwiej stłumić poprzednie wyjątki, gdy podniosę własny wyjątek?
try:
import someProprietaryModule
except ImportError:
raise ImportError('It appears that <someProprietaryModule> is not installed...')
Po uruchomieniu, jeśli nie jest zainstalowany someProprietaryModule, widzi:
(traceback data)
ImportError: unknown module: someProprietaryModule
During handling of the above exception, another exception occurred:
(traceback data)
ImportError: It appears that <someProprietaryModule> is not installed...
Może nie chcą "Podczas obchodzenia powyższego wyjątku ..." linii (i linie nad nim), aby się pojawiły. Mógłbym to zrobić:
_moduleInstalled = True
try:
import someProprietaryModule
except ImportError:
_moduleInstalled = False
if not _moduleInstalled:
raise ImportError('It appears that <someProprietaryModule> is not installed...')
Ale to wydaje się trochę hackować. Co jeszcze mogę zrobić?
To może pomóc http://stackoverflow.com/questions/1319615/proper-way-to-declare-custom-exceptions- in-modern-python –