python语法31[异常处理]

本文介绍了Python中基本的异常处理方法,包括try...except...else...finally的使用,并展示了如何自定义异常以增强程序的错误处理能力。

 

一 基本的异常处理

def TestTryException():
    
try:
        f 
= open('myfile.txt')
        s 
= f.readline()
        f.close()
        i 
= int(s.strip())
    
except IOError as ioerror :
        
print (ioerror)
    
except ValueError as valueerror:
        
print (valueerror)
    
except:
        
print ("Unexpected error")
    
else:
       
print (i)
    
finally:
       
print ("always running")
       
#TestTryException()

 

使用方式为try...except...else...finally,其中else和finally是可选项,finally不管是否有异常抛出总是会被执行。

 

二 自定义exception

class MyError(Exception):
     
def __init__(self, value):
         self.value 
= value
     
def __str__(self):
         
return repr(self.value)
         
def TestMyException():
  
try:
     
raise MyError(2*2)
  
except MyError as e:
    
print (e)
    
#TestMyException()

 

自定义的exception需要从python的Exception类继承,使用raise来抛出异常。

 

完!

 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值