Я хотел бы вызвать метод объекта динамически.Как динамически вызывать метод в python?
Переменная «MethodWanted» содержит метод, который я хочу выполнить, переменная «ObjectToApply» содержит объект. Мой код до сих пор:
MethodWanted=".children()"
print eval(str(ObjectToApply)+MethodWanted)
Но я получаю следующее сообщение об ошибке:
exception executing script
File "<string>", line 1
<pos 164243664 childIndex: 6 lvl: 5>.children()
^
SyntaxError: invalid syntax
Я также попытался без ул() оборачивать объект, но затем я получаю «не могу использовать + с ул и типы объектов ".
Когда не динамически, я могу просто сделать:
ObjectToApply.children()
И получить желаемый результат.
Как это сделать динамически?
только что попробовал 'getattr (sysobj, 'path')' где 'sysobj' является объектом' sys'. Он работает без() в реальном. –
@ManojAwasthi: Это потому, что 'sys.path' не является методом. Вы бы никогда не делали 'sys.path()'. –
Вау, большое спасибо. Мне не хватало() в конце (coudlnt представьте, что это будет так) Работает отлично! –