如何防止公式冻结程序

2024-05-17 10:12:28 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在开发一个生成随机方程的程序,它总是会产生一些错误,比如“不能被零除”和“overflowerror:result too large”,这些错误会阻止生成过程继续进行。有没有办法防止程序冻结并收到错误消息?你知道吗

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")

Tags: import程序var错误randommathv3result
1条回答
网友
1楼 · 发布于 2024-05-17 10:12:28

好吧,你应该首先研究一下错误发生的原因,然后修复它们。但是如果您想要一个快速(且不推荐)的解决方案,您可以使用try-except块捕获异常,以防止程序崩溃。请转到第8.3节了解如何执行此操作:https://docs.python.org/2/tutorial/errors.html

相关问题 更多 >