PYTHON Добавить содержимое строковой переменной в начало функции? - PullRequest
0 голосов
/ 13 октября 2011

Итак, у меня есть одна функция, которая находится в объекте:

class objectOne:  
    def funct1(self):
        #Do Stuff

И что я хотел бы сделать, так это иметь ее при создании двух объектов объекта:

dog = objectOne()

cat = objectOne()

Когда созданная мной переменная "animal" содержит cat, она запускается:

cat.funct1()

А когда переменная содержит dog, она запускается:

dog.funct1()

Есть ли способ сделать это?Заранее спасибо, ребята.

Ev: D

(Для пояснения: я не могу использовать здесь выражение if, потому что, поскольку я получаю все больше и больше разных экземпляров объекта, я неЯ хочу добавить что-то, мой последний код для вызова функции объекта должен выглядеть примерно так:

animal.funct1()

В каком животном есть переменная, а не экземпляр объекта. Еще раз спасибо, ребята!)

1 Ответ

2 голосов
/ 13 октября 2011

Использовать словарь . Животные будут ключами, объекты будут предметами.

Пример:

animals = {}
animals['cat'] = objectOne()
animal = 'cat'
animals[animal].funct1()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...