class Foo: listElement = [] def __init__(self): self.listElement.append('FooData') print self.listElement class Bar(Foo): def __init__(self): self.listElement.append('BarData') print self.listElement a = Foo() b = Foo() c = Bar() d = Foo() """ What should be printed is: ---start--- ['FooData'] ['FooData'] ['FooData'] ['FooData'] ---end--- Instead, it prints: ---start--- ['FooData'] ['FooData', 'FooData'] ['FooData', 'FooData', 'FooData'] ['FooData', 'FooData', 'FooData', 'FooData'] ---end--- """