On Tue, May 28, 2013 at 12:25 PM, Matt Graves <tunacu...@gmail.com> wrote: > I receive this error while toying around with Functions... > > def pulldata(speclist,speccolumn): > with open('profiles.csv', 'r') as f: > reader = csv.reader(f) > for column in reader: > (speclist).append(column[('speccolumn')]) > > pulldata(speclist = 'numbers', speccolumn = "0") > > >>Traceback (most recent call last): >> File "C:\Desktop\Python\CFI\Devices V2\users.py", line 17, in <module> >> pulldata(speclist = 'numbers', speccolumn = "0") >> File "C:\Desktop\Python\CFI\Devices V2\users.py", line 16, in pulldata >> (speclist).append(column[('speccolumn')]) >>AttributeError: 'str' object has no attribute 'append' > > I'm getting the error because it should say "numbers.append", but it is > reading it as "(speclist).append". > > This is my first time playing with functions, so be gentle.
It looks like you're trying to pass in a list called 'numbers' into the pulldata function, but that is not what's happening. Because of the single quotes you have around numbers, you are passing in the /string/ 'numbers' and calling it 'speclist' instead. The same goes for speccolumn as well; I think you mean to pass in the integer 0, but you're passing in the string "0" instead. Try it without the quotes: pulldata(speclist = numbers, speccolumn = 0) -- http://mail.python.org/mailman/listinfo/python-list