从函数内部exit()
是不好的形式吗?
def respond_OK():
sys.stdout.write('action=OK\n\n')
sys.stdout.flush() # redundant when followed by exit()
sys.exit(0)
而不是设置退出代码并从
exit()
命名空间进行__main__
替代?def respond_OK():
global exit_status
sys.stdout.write('action=OK\n\n')
sys.stdout.flush()
exit_status = 0
sys.exit(exit_status)
从功能的角度来看,这种差异可以忽略不计,只是想知道关于形式的共识是什么。如果您在别人的代码中找到了先验,您会两次看吗?
最佳答案
我希望看到从主入口点引发并处理的异常,该异常的类型被转换为退出代码。子类化异常在python中是如此简单,几乎很有趣。
如该答案的注释中所述:使用sys.exit还意味着终止点需要知道实际的状态码,而不是遇到的错误类型。当然,这可以通过一组常量来解决。但是,使用异常还有其他优点:如果一种方法失败,则可以尝试另一种方法而无需重新输入,或者打印一些事后调试信息。
关于python - 从函数中退出()是不好的形式吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12465605/