首页 > 解决方案 > 带有 try except 块的 if else 语句

问题描述

我有一个try/except要修改的代码块和if/else语句,它将执行部分代码并跳过其他代码。

这是我现在拥有的逻辑存根:

if arg1 == 'None':
    do something
else:
    do something else

try:
    execute main code
except:
    update failed status

execute_seperate_function(arg)

我想要做的是如果代码进入第一个if statement,然后try/except按原样运行和最后一个函数。但是,如果它进入else statement我想按try原样运行代码,但跳过执行except和最后一个函数。

有没有一种好方法可以做到这一点,而不是将所有内容都放在if/else语句中并使代码变得非常混乱?任何帮助表示赞赏!

标签: pythonpython-3.xif-statementtry-except

解决方案


可以使它成为一个像下面这样的函数,带有一个标志参数,它确定是否

def task(flag):
    if (flag == True):
        try:
            execute main code
        except:
            update failed status
        execute_seperate_function(arg)
    else:
        execute main code

if arg1 == 'None':
    task(True)
else:
    task(False)

那是不是更整洁了?取决于do something我的想法。


推荐阅读