如何在Python中捕获溢出错误异常?


当算术运算超出变量类型的限制时,就会引发溢出错误。长整数在值增长时会分配更多空间,因此最终引发内存错误。但是,浮点数异常处理并未标准化。根据需要,常规整数将转换为 long 值。

示例

给定代码被重写为捕获异常,如下所示

i=1
try:
f = 3.0**i
for i in range(100):
print i, f
f = f ** 2
except OverflowError as err:
print 'Overflowed after ', f, err

输出

我们得到以下溢出错误作为输出,如下所示

C:/Users/TutorialsPoint1/~scratch_1.py
Floating point values:
0 3.0
1 9.0
2 81.0
3 6561.0
4 43046721.0
5 1.85302018885e+15
6 3.43368382029e+30
7 1.17901845777e+61
8 1.39008452377e+122
9 1.93233498323e+244
Overflowed after 1.93233498323e+244 (34, 'Result too large')

更新于:12-Feb-2020

2K+ 浏览

开启您的 职业生涯

完成课程后获得认证

开始
广告