Форум сайта python.su
Я хотел бы иметь функцию, которая бы обрабатывала метод или атрибут объекта, причем и объект, и атрибут должны быть переданы в аргументах функции. Что-то вроде такого:
def print_atribute(a, b):
print a.b
class foo():
bar=10
baz=20
i=foo()
print_atribute(i, bar)
print_atribute(i, baz)
Понятно, что написанный код не работает (пайтон резонно замечает, что переменная bar или baz не определена). Как быть?
Отредактировано (Фев. 11, 2010 22:32:10)
Офлайн
Это не я…
def print_atribute(a, b):
print getattr(a, b)
class Foo():
bar = 10
baz = 20
obj = Foo()
print_atribute(obj, "bar")
print_atribute(obj, "baz")
Отредактировано (Фев. 11, 2010 22:27:40)
Офлайн
Спасибо, именно то, что нужно.
Офлайн