1.抓取已知异常:
try:
a
except NameError as e:
print("catch Error:",e)
2.捕获所有异常:
try:
a
except:
print("catch Error")
3.处理多个异常:
try:
f=open('1.txt')
line=f.read(2)
num=int(line)
print(num)
except IOError as e:
print("catch IOError:",e)
except ValueError as e:
print("catch ValueError:",e)
4.try-except-else
try:
f=open('1.txt','w')
line=f.write('2')
except IOError as e:
print("catch IOError:",e)
except ValueError as e:
print("catch ValueError:",e)
else:
print("no exception")
5.try-except-finally
try:
f=open('1.txt','w')
line=f.write('2')
except IOError as e:
print("catch IOError:",e)
except ValueError as e:
print("catch ValueError:",e)
finally:
f.close()
print("always do")
6.try-except-else-finally
try:
f=open('1.txt','w')
line=f.write('2')
except IOError as e:
print("catch IOError:",e)
except ValueError as e:
print("catch ValueError:",e)
else:
print("no exception")
finally:
f.close()
print("always do")
7.自定义异常
class CustomError(Exception):
def __init__(self,info):
Exception.__init__(self)
self.errorinfo=info
def __str__(self):
return "Custom:%s" % self.errorinfo
try:
raise CustomError("test failed")
except CustomError as e:
print("exception:",e)
