定义类及方法
class ParameterFactory(object):
.....
def fullLinkTag(self, fromDate, toDate, status, cate='全部', op=''):
.......
.......
在main文件中创建其实例
factory = ParameterFactory(cookie)
新建一个字典,根据业务需要传入中文名称,找到对应的函数名
funcdict = {
"全链路状态" : factory.fullLinkTag,
"搜索":factory.searchTag,
"付费广告":factory.payAdvertising,
"内容运营":factory.contentOperation,
#"天猫营销平台":factory.,
"销售渠道":factory.salesChannel,
#"线下触点":factory.,
#"istore小程序":factory.,
"店铺商品圈人":factory.shopGoods,
"属性圈人":factory.attributeTag,
"会员":factory.membership,
"现有人群": factory.currentCrowdMarketing,
}
以下是业务代码举例,包含调用的函数中文名及该函数需要的参数列表
call_setting = {'fun_name': '全链路状态',
'parameters': {'fromDate': 'T1加1',
'op': '交',
'status': '认知',
'toDate': 'T1加1'}}
动态函数调用成功!!!
- 关键可以通过在参数dict前面 添加 ** 两个星号**的形式实现
funcdict[call_setting['fun_name']](**parameters)