Sverre wrote:
I have to classes a  and b


class a(object):
    def __init__(self,x):
        self.x = x
        self.build()

    def build(self):
        return

class b(a):
    def __init__(self,x):
        a.__init__(self,x)
        self.y = 0  # ???

    def build(self):
        # do something
        self.y += 2*self.x

 t = b(1)

The line marked with "???" will no be executed and I don't know the
reason. This example is working as intended, but not not the code I'm
working on. I'm using Eclipse. I don't know how to debug this
problem.


By the way, you're executing self.y += 2*self.x before initializing it to 0.

class b(a):
   def __init__(self,x):
self.y = 0 a.__init__(self,x)


Note that having the constructor of 'a' calling an overriden method by 'b' (build) is kinda funny. I would advise not to do so unless required.

JM
--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to