tzkr.net
当前位置:首页 >> python 如何根据输入参数调用不同的函数 >>

python 如何根据输入参数调用不同的函数

使用字典,比如下面这样:def funcA(): pass def funcB(): pass def func_None(): print "cannot find func" func_dict = {"a": funcA, "b": funcB} def func(x): return func_dict.get(x, func_None)()在有switch的语言中,一般都是使用switch来根据

使用字典,比如下面这样:12345678910111213def funcA(): passdef funcB(): passdef func_None(): print "cannot find func"func_dict = {"a": funcA, "b": funcB}def func(x): return func_dict.get(x, func_None)()在有switch的语言中,一般都

def fun_a(): print 'a'def fun_b(): print 'b'def fun_z(): print 'z'def test_function(input_key): function_map = { 'a':fun_a, 'b':fun_b, 'z':fun_z, } return function_map[input_key]()代码测试:>>> test_function('a')a>>> test_function('b')b>>> test_function('z')z>>> 或者:12def test_function(input_key): eval("fun_%s()"%input_key)

1.method大小写修改到一致.2.最后那里bb不要加引号.def AA(method, data): method(data)def bb(data): print datadef cc(data): print dataAA(bb,'123')

Python中函数参数的传递是通过“赋值”来传递的.但这条规则只回答了函数参数传递的“战略问题”,并没有回答“战术问题”,也就说没有回答怎么赋值的问题.函数参数的使用可以分为两个方面,一是函数参数如何定义,二是函数在调用

>>> def a(): global q q=1+2 return q>>> def b(): a() c=2+q print(c)>>> b()5>>> q3函数中的变量在外面调用,需要申明为全局变量

如果你要调用的函数不多,那你可以通过判断输入的函数名称来执行对应的函数,如果函数要调用的太多,那你就要从程序的业务上重新分析,然后重新设计一下你的逻辑.

使用Python re正则表达式,注意使用re.DOTALL

函数也是对象,这样的好象就是可以做一个通用的框架.比如根据不同的内容调用不同的函数,可以把条件与函数存成一个对照表,然后动态查找函数进行调用.

这种函数是便于在别人调用的时候,如果没有传入参数的时候,采用的默认值现在你有add(a=1,b=2)的函数我直接print add()就可以直接输出3了定义如下:def add(a=1,b=2): return a+bps:你上面多打了一个右括号

网站首页 | 网站地图
All rights reserved Powered by www.tzkr.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com