[英]Call different function based on condition in try catch block in Python
我有一个代码,应该根据条件调用不同的函数。 下面是我的代码
try:
if condition_1 is True:
function1()
if condition_2 is True:
function2()
if condition_3 is True:
function3()
except Exception, e:
raise e
在某些情况下可能满足多个条件。 因此,需要调用和执行多个功能。 直到今天,当函数1引发异常时,它运行良好。
condition_1
和condition_3
为true。 因此,应该执行function1
和function3
。 当所谓的function1
,因为一些错误的, function1
,它提出了一个异常,不执行function3
。 我想要的是,即使function1
出现错误,它也应该继续执行并检查其他条件并相应地执行相应的功能。
解决此问题的一种方法是将每个if条件写入单独的try / catch块中。 但是,是否有更好的方法来解决此问题?
我认为,如果出现任何问题,则必须允许异常来中断该过程。 但是,您可以通过删除raise
关键字来实现此行为。
try:
if condition_1 :
function1()
if condition_2 :
function2()
if condition_3 :
function3()
except Exception, e:
pass
请看看为什么“ except:pass”是一种不好的编程习惯?
PS:您不需要检查条件是否True is True
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.