Alexnb wrote: > > I am not sure what is going on here. Here is the code that is being run: > > def getWords(self): > self.n=0
The value of self.n only makes sense within the method, so you better use the local variable n instead of the instance attribute self.n > for entry in self.listBuffer: > self.wordList[self.n] = entry.get() > self.n=self.n+1 > > print self.wordList > > This is the "listBuffer" that you see: > > self.listBuffer=[self.e1, self.e2, self.e3, self.e4, > self.e5, self.e6, self.e7, self.e8, > self.e9, self.e10, self.e11, > self.e12, self.e13, self.e14] > > (side note, those are all tkinter entry widgets, and the get() function > gets the text) > > this is the error the interpreter is giving me when I run it: > > self.getWords() > File "C:/Documents and Settings/Alex/My > Documents/PYTHON/DictionaryApp/The > GUI.py", line 153, in getWords > self.wordList[self.n] = entry.get() > IndexError: list assignment index out of range > > I have no idea what "list assignment index out of range means?!?! As Albert explained this means that wordList is shorter than listBuffer. The most flexible remedy is to have wordList grow dynamically: def getWords(self): wordList = [] for entry in self.listBuffer: wordList.append(entry.get()) print wordList If for some reason you want to remember the values in wordList add self.wordList = wordList to the method (this is the same consideration as for self.n versus n). Peter -- http://mail.python.org/mailman/listinfo/python-list