python以下关于异常处理的描述,正确的是: A try 语句中有 except 子句就不能有 finally 子句 B Python 中,可以用异常处理捕获程序中的所有错误

以下关于异常处理的描述,正确的是:
A
try 语句中有 except 子句就不能有 finally 子句
B
Python 中,可以用异常处理捕获程序中的所有错误
C
引发一个不存在索引的列表元素会引发 NameError 错误
D
Python 中允许利用 raise 语句由程序主动引发异常
正确答案: D

A、python和java 中的 try 、 except 、 finally是同级的,可同时出现
B、异常处理捕获程序中部分且已知的错误,在我现在技术栈中感觉没有任何一门语言可以完全捕获全部错误
C、引发一个不存在索引的列表元素会引发 IndexError,不是NameError
D、d选项的抛出异常是很正常的操作,python代码中常用到