考虑下面的代码,我想让你解释为什么代码不起作用,因为我看到别人在{{CD1}}之外分配类属性。 从一个方法调用另一个方法中的属性,我的方法有什么问题。下面三个打印所有结果错误,表示该类没有任何属性
class Person(object):
def __init__(self, age, height):
self.age = age
self.height = height
def weight_kg(self):
self.weight = 60
def ratio_kg2height(self):
self.ratio = self.weight / self.height
return self.ratio
mike = Person(23, 170)
print mike.weight
print mike.ratio_kg2height()
print mike.ratio
您没有在
__init__
方法中定义weight
属性,因为在访问该属性之前不调用weight_kg
方法,因此该属性不可用这里有一些选项,基本选项是先初始化它,您只需在
__init__
方法中调用您的方法:这里有一个live example
相关问题 更多 >
编程相关推荐