我正在研究一个生成随机方程的程序,并且总是得到错误,例如"不能除以零"并且" overflower:结果太大"这阻止了继续生成。有没有办法阻止程序冻结并收到错误消息?
import random
import math
while 1:
try:
var = ['math.pi','999999999999999999999','(5/3)']
s1 = '**'
s2 = '**'
s3 = '**'
s4 = '**'
v1 = var[random.randrange(0,2)]
v2 = var[random.randrange(0,2)]
v3 = var[random.randrange(0,2)]
v4 = var[random.randrange(0,2)]
v5 = var[random.randrange(0,2)]
result = eval(v1+s1+v2+s2+v3+s3+v4+s4+v5)
print v1+s+v2+s+v3+s+v4+s+v5
except:
print("error found moving on")
答案 0 :(得分:0)
嗯,你应该首先调查错误发生的原因并修复它们。但是,如果您想要一个快速(并且未经推荐)的解决方案,您可以使用try-except块捕获异常,以防止程序崩溃。请转到此处的第8.3节,了解如何执行此操作:https://docs.python.org/2/tutorial/errors.html