捕捉错误并退出

时间:2011-01-07 05:42:08

标签: python error-handling terminate terminate-handler

在python中,有没有办法在测试条件后退出一个类,而不退出python?

说我有班级

class test():
     def __init__(self):
         self.a = 2

     def create_b(self):
         self.b = 3

     def does_b_exist(self):
         if <self.b doesnt exist>:
             #terminate

         self.b += 1

try / except`不起作用,因为程序的其余部分在失败后没有终止。我基本上试图捕获一个错误,并在它显示错误时执行python所做的事情,但我无法弄清楚如何做到这一点

2 个答案:

答案 0 :(得分:2)

您可能希望运行“python -i”,它会在程序执行后将您带到交互式控制台,运行sys.exit(),它会终止程序,或者您(可能)想要自定义{{3} }。请更详细地描述您想要的行为,我们可以为您提供一些代码来尝试。

答案 1 :(得分:0)

quit()是一个不错的选择。它将退出该过程,但请务必在此之前进行清理。您可以考虑抛出未捕获的异常并使用finally语句,因为您的脚本会彻底中止。