Python异常语法差异?
我只是对python异常的语法感到好奇,因为我似乎无法理解何时支持您使用下面的语法捕获异常Python异常语法差异?,python,exception,syntax,error-handling,Python,Exception,Syntax,Error Handling,我只是对python异常的语法感到好奇,因为我似乎无法理解何时支持您使用下面的语法捕获异常 try: """ Code that can raise an exception... """ except Exception as e: pass 及 区别是什么?除了例外,在Python 3中不推荐使用e 正确的形式是: try: ... except Exception as e: ... 请参阅:注意:正如Martijn指出的那样,逗
try:
"""
Code that can raise an exception...
"""
except Exception as e:
pass
及
区别是什么?
除了例外,在Python 3中不推荐使用e
正确的形式是:
try:
...
except Exception as e:
...
请参阅:注意:正如Martijn指出的那样,
逗号变量
表单在Python3.x中不受欢迎。因此,最好使用作为
表单
依照
相当于
except Exception as e:
在一次捕获多个异常时仍然使用逗号,如下所示
except (NameError, ValueError) as e:
请记住,捕获多个异常时,异常周围的括号是必需的。除了后者是首选的之外,前者在Python 3中已被弃用并完全删除。最后一行显示了引入
as
以替换逗号的原因。当捕捉到多个异常时,这让人非常困惑。使用except(namererror,ValueError)作为e:
在那里。@MartijnPieters得到了你:)更新后,将后者写为except-namererror,ValueError:
是很常见的,并且想知道为什么它不起作用,或者使用except(namererror,e):
并且想知道为什么在e
上仍然出现namererror
。你仍然在暗示你只能用现在不推荐的语法捕获多个异常。我想我不太想谢谢@MartijnPieters
except Exception as e:
except (NameError, ValueError) as e: