Как получить доступ к методу объекта, когда имя метода находится в переменной? - PullRequest
6 голосов
/ 23 декабря 2009

Скажем, у меня есть объект класса с именем test.

У теста есть несколько методов, одним из которых является любой ().

У меня есть переменная с именем method = "what"

Как я могу получить доступ к методу, используя переменную с тестом?

Спасибо!

Ответы [ 2 ]

9 голосов
/ 23 декабря 2009

Получить атрибут с getattr:

method = "whatever"
getattr(test, method)

Вы также можете назвать это:

getattr(test, method)()
2 голосов
/ 23 декабря 2009

К доступ метод, getattr(test, test.method); таким образом, вы можете связать его с переменной, вернуть его как результат функции, передать в качестве аргумента и так далее. Чтобы также вызвать , добавьте аргументы в скобках (просто скобки, если аргументов нет), например getattr(test, test.method)().

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...