Python:将循环if语句更改为函数或替代



我对多个变量使用循环if语句,它们都遵循相同的条件,但是!非常重要,它们都是独立的,与变量相关的函数也是。有时你只执行一个函数,有时执行另一个函数,有时执行所有函数。

我的实际代码看起来像这样:

if len(variable) != 0 or variable_1 is not None:
exec_func_1(variable_1)
if len(variable_2) != 0 or variable_2 is not None:
exec_func_2(variable_2)
if len(variable_3) != 0 or variable_3 is not None:
exec_func_3(variable_3)

我正在寻找替换的东西,如一个函数或更简单的代码行,因为它可以在我的代码重复同样的事情无数次。例如:

def use_condition(variable):
# obiously doesn't work hahah
if len(variable) != 0 or variable is not None:
pass

因为如果我改变了if语句中的一个参数那么改变所有的&;if&;语句同时执行

你可以像这样传递函数作为另一个函数的参数:

def use_condition(var, func):
if (len(var) != 0 or var is not None:
func(var)

你可以用变量和你想要的执行函数来调用它:

use_condition(variable_1, exec_func_3)

最新更新