如何在Python中退出if/else语句内部的try/except
所以我有这个:如何在Python中退出if/else语句内部的try/except,python,django,Python,Django,所以我有这个: if condition: ... elif condition2: ... elif condition3: try: existing_bid = # get some object from django models except SomeError: # if this object does not exist # here I need to escape from if/else to main s
if condition:
...
elif condition2:
...
elif condition3:
try:
existing_bid = # get some object from django models
except SomeError: # if this object does not exist
# here I need to escape from if/else to main scope
if ... # some comparison with an existing_bid:
#return error
... # try to manipulate existing_bid object and save it
# here I need to escape
...
...
从if/else到主作用域的try/except中退出的最佳实践是什么?
谢谢
编辑:
如果要在try/except之后转义并返回到主作用域,请提供一些上下文。如果将try/except语句放在
elif
条件3的底部,将很容易处理。一旦完成try/except
语句,程序也将完成elif
语句并转义到主范围
否则,您必须在
try/except
代码中添加break
。如果在try-except之后没有elif
,您可以只使用pass
。或者,将整个结构放在一个短函数中,并在except
部分使用return
。我不理解您的问题。如果一个条件(在本例中为condition3
)为True
,则它在该条件下执行代码,并跳过后面的任何其他elif
语句,因此,您不需要转义If/else。如果循环中存在If/else条件,并且需要转义该条件,则可以使用break
。但它不是一个要从中转义的循环吗<代码>语法错误:中断外部循环只需将中断
替换为通过
。是的,只需在语句末尾使用通过
。