Steven D'Aprano wrote, on January 08, 2017 7:30 PM > > On Sunday 08 January 2017 20:53, Deborah Swanson wrote: > > > Steven D'Aprano wrote, on January 07, 2017 10:43 PM > > No, I'm pretty sure that's not the case. I don't have access > to your CSV file, > but I can simulate it: > > ls = [['Location', 'Date', 'Price'], > ['here', '1/1/17', '1234'], > ['there', '1/1/17', '5678'], > ['everywhere', '1/1/17', '9821'] > ] > > from collections import namedtuple > lst = namedtuple('lst', ls[0]) > > print(type(lst)) > print(lst) > > > > If you run that code, you should see: > > <class 'type'> > <class '__main__.lst'> > > > which contradicts your statement: > > 'lst' is a namedtuple instance with each of the column > titles as field names.
Yes, yes. In a careless moment I called a class an instance. > and explains why you had to access the individual property > method `fget`: you > were accessing the *class object* rather than an actual named > tuple instance. That code is deleted and long gone now, so I can't look at it in the debugger, but yes, I'm pretty sure 'fget' is a class member. > The code you gave was: > > lst.Location.fget(l) > > where l was not given, but I can guess it was a row of the > CSV file, i.e. an > individual record. So: > > - lst was the named tuple class, a subclass of tuple > > - lst.Location returns a property object > > - lst.Location.fget is the internal fget method of the > property object. And your point is? Perhaps I didn't express myself in a way that you could recognize, but I understood all of that before I wrote to you, and attempted to convey that understanding to you. Obviously I failed, if you now think I need a lesson in what's going on here. > I think Peter Otten has the right idea: create a list of > records with something > like this: > > > Record = namedtuple('Record', ls[0]) > data = [Record(*row) for row in ls[1:]) > > > or if you prefer Peter's version: > > data = [Record._make(row) for row in ls[1:]) > > > Half the battle is coming up with the right data structures :-) Can't and wouldn't disagree with any part of that! > -- > Steven > "Ever since I learned about confirmation bias, I've been seeing > it everywhere." - Jon Ronson -- https://mail.python.org/mailman/listinfo/python-list