如何使用其他参数在python中启动getattr函数?

meg*_*ido 29 python getattr

我想通过使用getattr函数添加参数来调用一些未知函数.可能吗?

Ign*_*ams 56

是的,但你没有把它们传递给getattr(); 一旦引用该函数,就可以正常调用该函数.

getattr(obj, 'func')('foo', 'bar', 42)
Run Code Online (Sandbox Code Playgroud)


Ste*_*yne 37

如果要使用动态参数/关键字参数列表调用动态方法,可以执行以下操作:

function_name = 'wibble'
args = ['flip', 'do']
kwargs = {'foo':'bar'}

getattr(obj, function_name)(*args, **kwargs)
Run Code Online (Sandbox Code Playgroud)