py-错误处理

 

 

 

 

 

出错并不可怕,可怕的是不知道哪里出错了。解读错误信息是定位错误的关键。我们从上往下可以看到整个错误的调用函数链:

告诉我们这是错误的跟踪信息。

调用main()出错了,在代码文件pytry.py的第117行代码,但原因是第116行:

 调用bar('0')出错了,在代码文件pytry.py的第116行代码,但原因是第114行:

 原因是return foo(s) * 2这个语句出错了,但这还不是最终原因,继续往下看:

原因是return 10 / int(s)这个语句出错了,这是错误产生的源头,因为下面打印了: 

 根据错误类型ZeroDivisionError,我们判断,int(s)本身并没有出错,但是int(s)返回0,在计算10 / 0时出错,至此,找到错误源头。

 

执行,可以最后跟踪到我们自己定义的错误: 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值