[英]Define function and it's parameter based on configuration in python
我必须用 class 及其 function 编写 python 脚本。 function 参数应根据配置而变化。 在“C”语言中,它可以使用#ifdef 或#if 宏来实现
#ifdef MULTIPLE_APPLICATION
uint8 check_actions(int machine, int application_instance, int error_limit)
{
.....
}
#else /*single applciation*/
uint8 check_actions(int machine, int error_limit)
{
.....
}
同样,我如何在 python 中实现。 因为我在 python 中找不到任何替换 #ifdef 的东西。 我想要类似的东西
#ifdef MULTIPLE_APPLICATION
def check_actions(self, machine, application_instance, error_limit)
#else
def check_actions(self, machine, error_limit)
.......
.......
python 是纯 OOP 语言。 没有#if 宏。 这里的情况完全不同。 您可以通过多种方式解决它。 一种简单的方法是定义外部 function 和 2 个嵌套内部函数,并调用与传递给外部函数的 var 对应的内部函数之一:见下文:
def check_action(application_stat, *args, **kwargs):
def check_single_app_action(*args, **kwargs):
#do some thing
return
def check_multi_app_action(*args, **kwargs):
#do some work
return
if application_stat=='single':
check_single_app_action(args, kwargs)
else:
check_multi_app_action(args, kwargs)
return
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.