class test_class: mylist=[] myvar=0 name='' def __init__(self,listinput,varinput,name): # self.mylist=[] ##### Uncommenting this line will make it work correctly self.name = name print self.name+' :' print '\tmylist =',self.mylist print '\tmyvar =',self.myvar self.mylist.append(listinput) self.myvar = varinput def show(self): print self.name+' :' print '\tmylist =',self.mylist print '\tmyvar =',self.myvar print "BEFORE:" test1=test_class([1,2,3],7,'test1') test2=test_class(5,8,'test2') print "AFTER:" test1.show() test2.show()