#!/usr/bin/python
# -*- coding: UTF-8 -*-
# 定义函数
def mye( level ):
if level < 1:
raise Exception("Invalid level!", level)
# 触发异常后,后面的代码就不会再执行
try:
mye(0)
except "Invalid level!":
print 1
else:
print 2
为什么发生异常后不输出‘1’呢?
https://segmentfault.com/q/1010000007710250
在这里看到了一模一样的问题…………
答案就是语法错误,python的异常捕捉一般是写作:
except Exception ,e:
print e
try...except... 语句,except 后面的异常必须是可能出现的异常,不是你随便定义的,你可以不加这个语句运行,看看系统提示什么异常,你在except 后面加这个异常就可以了: