我怎么能调用我的python方法

时间:2015-05-15 20:07:11

标签: python class methods

Python的新手--OO - 已经使用过程python一段时间了。我写了一个愚蠢的类和方法,并且无法调用我的方法:

class Jpd:
    #attributes share data among class objects.
    my_age = 26

    def __init__(self, value):
        #method-level attribute data.
        self.my_age = value

    def ageToRetireFrom(self ):
        print self.my_age + 20

    def ageToBuyHome(self):
        print self.my_age + 5

retire = Jpd.ageToRetireFrom()
home = Jpd.ageToBuyHome()

如果我尝试调用我的文件example.py,请执行以下操作:

>>> import example
>>> j = example.Jpd() 

我明白了:

NameError: global name 'value' is not defined

我知道这是在抱怨我的value属性未分配。有人可以帮我调用这个方法吗?

谢谢

2 个答案:

答案 0 :(得分:1)

定义__init__方法时,如果要创建新实例,将成为调用签名。因此,从您的示例中,您将使用:

j = example.Jpd(15)

建立一个15岁的新人。

答案 1 :(得分:1)

当您创建类Jpd的实例时,应该是这样的:

j = example.Jpd(20) 

因为您定义了__init__(self, value),因此您需要在创建班级实例时传递值