1、直接抛出异常,程序停止,不会打印is here
s = None
if s is None:
raise NameError
print ('is here?') # 如果不使用try......except这种形式,那么直接抛出异常,不会打印is here
2、try except 捕获异常
try:
s = None
if s is None:
print("s 是空对象")
#1,如果加else,则语法if else 完整,不会触发except
# else:
#print (len(s))
# print(len(s)) # 2,if为None,打印"s 是空对象",接着执行len(s),None没有长度,报异常TypeError,except捕获成功,打印“空对象没有长度”
raise NameError #3, 如果引发NameError异常,后面的代码将不能执行
print(len(s))
except TypeError:
print ("空对象没有长度")
### 如果不使用try......except这种形式,那么直接抛出异常,不会打印is here