Ethan Furman wrote, on January 09, 2017 8:01 PM > > On 01/09/2017 07:02 PM, Deborah Swanson wrote: > > Erik wrote, on January 09, 2017 5:47 PM > > >> As people keep saying, the object you have called 'records' is a > >> *list* of namedtuple objects. It is not a namedtuple. > >> > >> IIRC, you create it using a list comprehension which creates the > >> records. A list comprehension always creates a list. > > > > Well no. The list is created with: > > > > records.extend(Record._make(row) for row in rows) > > > > I'm new to both namedtuples and list comprehensions, so I'm not > > exactly sure if this statement is a list comprehension. It > looks like > > it could be. In any case I recreated records in IDLE and got > > > >--> type(records) > > <class 'list'> > > > > So it's a class, derived from list? (Not sure what the > 'list' means.) > > On the one hand, Deborah, I applaud your perseverance. On > the other, it seems as if you trying to run before you can > walk. I know tutorials can be boring, but you really should > go through one so you have a basic understanding of the fundamentals.
I actually have had a solid foundation of study in 2 terms of MIT's introductory Python courses. But they can't cover everything in that short a time. > Working in the REPL (the python console), we can see: > > Python 3.4.0 (default, Apr 11 2014, 13:05:18) > ... > --> type(list) > <class 'type'> > --> > --> type(list()) > <class 'list'> > --> type([1, 2, 3]) > <class 'list'> > > So the `list` type is 'type', and the type of list instances > is 'class list'. I just saw that while replying to MRAB. 'records' has type list, but it's only the outer data structure that's a list. Inside, all the records are namedtuples, and I think that accounts for behaviors that are unlike a list of lists. (And the reason I was reluctant to accept that it could be sorted until I tried it for myself.) The method calls I was able to use were from the namedtuples, not the list of namedtuples. > Your records variable is an instance of a list filled with > instances of a namedtuple, 'Record'. One cannot sort a > namedtuple, but one can sort a list of namedtuples -- which > is what you are doing. Yes, I think we've got that straight now. > As I said earlier, I admire your persistence -- but take some > time and learn the basic vocabulary as that will make it much > easier for you to ask questions, and for us to give you > meaningful answers. > > -- > ~Ethan~ As I mentioned, I have completed MIT's 2 introductory Python courses with final grades of 98% and 97%. What tutorials do you think would significantly add to that introduction? It's true that I didn't spend much time in the forums while I was taking those courses, so this is the first time I've talked with people about Python this intensively. But I'm a good learner and I'm picking up a lot of it pretty quickly. People on the list also talk and comprehend differently than people in the MIT courses did, so I have to become accustomed to this as well. And the only place to learn that is right here. -- https://mail.python.org/mailman/listinfo/python-list