Ответ 1
Да, но вы не передаете их getattr()
; вы вызываете функцию как обычно, как только вы ссылаетесь на нее.
getattr(obj, 'func')('foo', 'bar', 42)
Я хочу вызвать некоторую неизвестную функцию с добавлением параметров с помощью функции getattr. Возможно ли это?
Да, но вы не передаете их getattr()
; вы вызываете функцию как обычно, как только вы ссылаетесь на нее.
getattr(obj, 'func')('foo', 'bar', 42)
Если вы хотите вызвать динамический метод с динамическим списком аргументов/аргументов ключевого слова, вы можете сделать следующее:
function_name = 'wibble'
args = ['flip', 'do']
kwargs = {'foo':'bar'}
getattr(obj, function_name)(*args, **kwargs)