Chuckk Hubbard wrote: > I can't think of any reason these lines: > > self.regionlist[self.hregion][0] = self.curnum > self.regionlist[self.hregion][1] = self.curden > self.regionlist[self.hregion][3] = self.octave11 = self.yadj > > should change self.regionlist[0] AND self.regionlist[2] in the same > call, but they do. Also, if I add more regions in series, they all > update each other.
The likely explanation is that regionlist[0] and regionlist[2] are actually the same list. Throw in a print self.regionlist[0] is self.regionlist[2] to verify. The two most common reasons for that: class A: items = [] # class attribute, shared between all instances def f(items=[]): # default argument, shared between all calls # without explicit items argument return items Peter -- http://mail.python.org/mailman/listinfo/python-list