我仍然对python有点新意,我正在尝试使用变量来调用类的特定属性。但是,我想我可能会遗漏一些东西。我在下面列举了一个例子。谢谢你的帮助!
class character(object):
def __init__(self, name, name1, name2):
self.name = name
self.name1 = name1
self.name2= name2
bob = character('bob', 'bob1', 'bob2')
def print_name(var1, var2):
print(var1.var2)
print_name(bob, 'name1')
答案 0 :(得分:1)
尝试使用getattr
:
class character(object):
def __init__(self, name, name1, name2):
self.name = name
self.name1 = name1
self.name2= name2
bob = character('bob', 'bob1', 'bob2')
def print_name(var1, var2):
print(getattr(var1,var2))
print_name(bob, 'name1')
这来自documentation:
返回object的named属性的值。名字必须是 串。如果字符串是对象属性之一的名称, 结果是该属性的值。例如,getattr(x, ' foobar')相当于x.foobar。如果命名属性没有 如果提供,则返回default,否则返回AttributeError 提高。