假设我有一个main.py和26个附加的Python文件,从a.py到Z.py。
这26个文件都包含一个名为functionA()、functionB()…functionZ()的函数
我有一个变量,我们称之为“var”,并根据变量启动正确的函数。
现在,我的main.py代码如下所示:
from A import functionA
from B import functionB
.
.
.
from Z import functionZ
var = "N";
if var == "A":
functionA()
elif var == "B":
functionB()
.
.
.
elif var == "Z":
functionZ()
然而,实际的代码不会只有26个函数,而是超过100个。
我听说如果..elif..elif比switch var:
更高效。
但是,有没有任何方法可以根据变量触发functionvar()
,而不逐个遍历所有变量?如果不是的话,如果…以利…以利…否则是最有效的方法吗
您可以使用:
locals()['function'+var]()
如果必须遵循此结构,可以使用
importlib
。它不是很透明,但是只需要少量的行就可以实现所需的功能,并且不需要在文件顶部进行所有导入相关问题 更多 >
编程相关推荐