Python中的超类Exception
是什么?请为我提供Python异常层次结构。在Python中是否有任何Exception超类,如Throwable Java Exception?
-1
A
回答
3
您正在寻找BaseException
。
用户定义的异常类型应划分为Exception
。请参阅docs。
2
Exception
的基类:
>>> Exception.__bases__
(BaseException,)
Exception hierarchy从文档证实,它是所有异常的基类:
BaseException
+-- SystemExit
+-- KeyboardInterrupt
+-- GeneratorExit
+-- Exception
+-- StopIteration
+-- ArithmeticError
| +-- FloatingPointError
...
捕获所有异常的语法是:
try:
raise anything
except:
pass
注意:使用它非常非常谨慎,例如,你可以使用它在__del__
清理过程中的方法,当世界可能被半毁,并没有其他的选择。
的Python 2允许提高不是从BaseException
派生的异常:
>>> raise 1
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: exceptions must be old-style classes or derived from BaseException, not int
>>> class A: pass
...
>>> raise A
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
__main__.A: <__main__.A instance at 0x7f66756faa28>
它是固定在Python 3,强制执行的规则:
>>> raise 1
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: exceptions must derive from BaseException
+0
谢谢老板的帮助........... –
+0
对我来说,'除了:'从来没有成为SyntaxError,它似乎不值得这个缩写! (vs'除了BaseException:')。我想这是为了方便和向后compat脚本(虽然我打赌大多数时间他们的意思'除了例外:')。 –
相关问题
- 1. Java中的Throwable和Exception
- 2. 如何制作jaxb-xjc使用的“Exception”类类Throwable?
- 3. 是否是java Exception class checked type?
- 4. Python是否具有抛出新Exception的Java等价物(“text here”)
- 5. IntelliJ中是否有“Break on Exception”?
- 6. MySql - Java - 找不到类Exception
- 7. python reraise/recatch exception
- 8. 在Python中,是否有对Exception的提升者的引用?
- 9. Java Exception Listener
- 10. 有没有python exception notifier存在?
- 11. D编程语言中有哪些类成员可以使用Throwable和Exception?
- 12. 如何处理python中的try/exception块?
- 13. Java IO Exception - Selenium GRID
- 14. 引发Exception类和Exception实例有区别吗?
- 15. IMAGE EXCEPTION
- 16. 捕获Exception类而不是Exception子类是不好的做法吗?
- 17. 如何找出Exception的基类是否为OperationCanceledException?
- 18. Exception类如何知道ArithmeticException类?
- 19. 没有抛出Exception?
- 20. 在C#中的checked exception
- 21. TypeInitialization Exception
- 22. setBackgroundColor exception
- 23. FLUME EXCEPTION
- 24. 当仅有Exception类可以处理所有类型的异常时,其他Exception类的需求是什么?
- 25. 要使用哪个Exception类?
- 26. 如何在Java编译时链接Exception类
- 27. 是否有任何情况(在实践中),在catch块中抛出Exception是有用的?
- 28. Spring Java Exception Listener without web
- 29. 找不到数据Java exception
- 30. Kivy ScrollView exception raise Exception('ScrollView accept only one widget')
非常感谢您的帮助.. ... :-) –