为了账号安全,请及时绑定邮箱和手机立即绑定

Pythontry…除逗号vsas外

Pythontry…除逗号vsas外

幕布斯7119047 2019-07-15 15:07:53
Pythontry…除逗号vsas外除了陈述之外,‘和’as‘之间的区别是什么(如:try:     passexcept Exception, exception:     pass以及:try:     passexcept Exception as exception:     pass2.6中的第二种语法合法吗?它在Windows上的CPython2.6中工作,但是cygwin中的2.5解释器抱怨它无效。如果它们在2.6中都是有效的,我应该使用哪一个?
查看完整描述

3 回答

?
偶然的你

TA贡献1841条经验 获得超3个赞

最终文件是Pep-3110:捕获异常

摘要:

  • 在Python3.x中,使用

    as

    所需

    若要将异常赋值给变量,请执行以下操作。
  • 在Python2.6+中,使用

    as

    语法,因为它不那么模棱两可,并且与Python3.x兼容。
  • 在Python2.5和更早版本中,使用逗号版本,因为

    as

    不支持。


查看完整回答
反对 回复 2019-07-15
?
潇湘沐

TA贡献1816条经验 获得超6个赞

是的这是合法的。我正在运行Python2.6

try:
    [] + 3except Exception as x:
    print "woo hoo">>> woo hoo

更新*使用as语法。使用,正如其他人所指出的,这使得事情变得更加模棱两可;下面是造成差异的原因。在Python2.6中,multicatch这样你就可以在一个中捕获多个异常except..在这种情况下,说一声更有表现力和情调

except (exception1, exception2) as e

而不是说

except (exception1, exception2), e

还能用


查看完整回答
反对 回复 2019-07-15
  • 3 回答
  • 0 关注
  • 416 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信