当条件不满足时,打印错误消息而不打印回溯,并关闭程序。
当条件不满足时,打印错误消息而不打印回溯,并关闭程序。
我看到了类似的问题,但它们都没有真正解决trackback的问题。
如果我有一个如下的类:
class Stop_if_no_then(): def __init__(self, value one, operator, value_two, then, line_or_label, line_number): self._firstvalue = value_one self._secondvalue = value_two self._operator = operator self._gohere = line_or_label self._then = then self._line_number = line_number def execute(self, OtherClass): "比较前两个值并进行相应的更改等操作的代码"
我希望我的execute方法能够做的是,如果self._then不等于字符串"THEN"(全大写),那么我希望它引发一个自定义的错误消息并终止整个程序,同时不显示trackback。
如果遇到错误,唯一应该打印出来的东西应该是这样的(我用3作为示例,格式不是问题)。
`语法错误(第3行):语句中没有-THEN-。`
实际上,我对它是否是异常类对象并不挑剔,所以在这方面没有问题。由于我将在while循环中使用它,简单的if、elif会一遍又一遍地重复消息(因为显然我没有关闭循环)。我看到了sys.exit(),但它也会打印出一大块红色的文本,除非我使用不正确。我不想在我的循环中捕获异常,因为同一模块中还有其他类需要实现类似的东西。