Найти - Пользователи
Полная версия: Выбрать атрибут через аргумент
Начало » Python для новичков » Выбрать атрибут через аргумент
1
zzzzzzzzz
Я хотел бы иметь функцию, которая бы обрабатывала метод или атрибут объекта, причем и объект, и атрибут должны быть переданы в аргументах функции. Что-то вроде такого:

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 не определена). Как быть?
ZZZ
Это не я…

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")
zzzzzzzzz
Спасибо, именно то, что нужно.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB