Pythontry…除逗号vsas外

Pythontry…除逗号vsas外

除了陈述之外,‘和’as‘之间的区别是什么(如:

try:
    passexcept Exception, exception:
    pass

以及:

try:
    passexcept Exception as exception:
    pass

2.6中的第二种语法合法吗?它在Windows上的CPython2.6中工作,但是cygwin中的2.5解释器抱怨它无效。

如果它们在2.6中都是有效的,我应该使用哪一个?


幕布斯7119047
浏览 419回答 3
3回答

偶然的你

最终文件是Pep-3110:捕获异常摘要:在Python3.x中,使用as是所需若要将异常赋值给变量,请执行以下操作。在Python2.6+中,使用as语法,因为它不那么模棱两可,并且与Python3.x兼容。在Python2.5和更早版本中,使用逗号版本,因为as不支持。

潇湘沐

是的这是合法的。我正在运行Python2.6try:     [] + 3except Exception as x:     print "woo hoo">>> woo hoo更新*使用as语法。使用,正如其他人所指出的,这使得事情变得更加模棱两可;下面是造成差异的原因。在Python2.6中,multicatch这样你就可以在一个中捕获多个异常except块..在这种情况下,说一声更有表现力和情调except (exception1, exception2) as e而不是说except (exception1, exception2), e还能用
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python