如何将多个选项作为单个变量传递给getattr?

时间:2015-07-27 22:10:31

标签: python

我有以下代码:

def myfunction(con, command, options=None):
    if options != None:
        return getattr(con, command)(options)

returnvalue = myfunction(fromcon, 'search', (None, 'all'))

我需要改变它,以便它做同样的事情:

returnvalue = getattr(fromcon, 'search')(None, 'all')

帮助。

1 个答案:

答案 0 :(得分:2)

您需要*args语法:

def myfunction(con,command,options=None):
    if options is not None:
        return getattr(con,command)(*options)

returnvalue = myfunction(fromcon,'search',(None,'all'))

您可以详细了解其工作原理here