我是python编程的新手。有可能在python中引发异常而不使用try除了块(或)仅使用except(或)仅使用try块。
由于 Mukthyar
答案 0 :(得分:3)
您可以在代码中的任何位置引发异常,它将退出调用链中的所有函数,直到它到达匹配的except块。您不需要在内部尝试阻止引发异常 - 只捕获一个异常。
try块上可以拥有的全套内容如下所示:
try:
...
except A:
...
except B:
...
else:
...
finally:
...
你可以在文档中找到所有这些内容的完整定义,但我认为你要问的是你是否可以except:
没有try:
- 你不能。 try:
在上面是必需的,你至少需要其中一个,但它可以是其中任何一个(你可以拥有多个,包括任意多个except:
)。
答案 1 :(得分:2)
阅读Errors and Exceptions上的文档,尤其是Raising Exceptions section
raise
语句允许程序员强制指定 异常发生。例如:>>> >>> raise NameError('HiThere') Traceback (most recent call last): File "<stdin>", line 1, in ? NameError: HiThere
答案 2 :(得分:2)
你不需要它在try..except块中,但是当你引发异常时,你总是希望捕获它并在代码中的某个地方处理它。这是try..except块的使用。您需要在代码中的某处使用它来处理引发的异常,否则异常将停止程序的执行。
答案 3 :(得分:1)
您不需要在try/except
块内,以便引发异常。另一方面,如果要捕获并处理异常,则需要使用try/except
块。
如果没有try
或except
来编写finally
,则会出现语法错误。或者确实在没有匹配except
的情况下编写try
。这些语言结构是密不可分的。