10.3.8 else 子句中查找匹配的异常。
我们已经看过else语句段配合其他的Python语句,比如条件和循环。
至于try-except 语句段,它的功能和你所见过的其他else没有太多的不同:
在try 范围中没有异常被检测到时,执行else子句。
在else范围中的任何代码运行前,try范围中的所有代码必须完全成功
也就是说,结束前没有引发异常)
[mqm@node2 0420]$ python a1.py
222222222222
[mqm@node2 0420]$ ls
a1.py aa
[mqm@node2 0420]$ cat aa
T am W[mqm@node2 0420]$
[mqm@node2 0420]$
[mqm@node2 0420]$ cat a1.py
def logwrite(a):
f=open(a,'w')
f.write("T am W")
try:
logwrite('aa')
except:
print '1111111111111'
else:
print '222222222222'
[mqm@node2 0420]$ cat aa
T am W[mqm@node2 0420]$
[mqm@node2 0420]$ python a1.py
[Errno 13] Permission denied: '/root/aa'
[mqm@node2 0420]$ cat a1.py
def logwrite(a):
f=open(a,'w')
f.write("T am W")
try:
logwrite('/root/aa')
except Exception, e:
print e
else:
print '222222222222'
[mqm@node2 0420]$ python a1.py
[Errno 13] Permission denied: '/root/aa'