все. См. Пример ниже. Я хотел бы предоставить строку методу «sched_action», который указывает, какой метод Bot-класса следует вызывать. В приведенном ниже примере я представлял его как «bot.action()», но я не знаю, как это сделать правильно. Пожалуйста, помогитеВыполняется скрипт Python. У меня есть имя метода как строка. Как мне назвать этот метод?
class Bot:
def work(self): pass
def fight(self): pass
class Scheduler:
def schedule_action(self,action):
bot = Bot()
bot.action()
scheduler = Scheduler()
scheduler.schedule_action('fight')
Обязательно рассмотрите эту опцию. Если вы хотите динамически выбирать метод для вызова, это может быть правильным вариантом для вас. Используйте только опции 'getattr', если вы произвольно генерируете это имя (например, читаете его из файла, из сокета или из пользовательского ввода). – Wesley
Истинно, что он даст ошибку ранее в описанной вами ситуации, но ошибка не во время компиляции. –
ах, ты прав. сообщение отредактировано. –