On 22/11/11 17:09, Cranky Frankie wrote:
Dave I'm sorry but I just don't get this. I have virtually no experience with classes.
You need to step back and rethink the terminology a bit. A class is a cookie cutter for creating objects. Objects are instances of the class.
What seems like it should work is this: ####################### len_Qb_list = len(Qb_list) for i in range(0, len_Qb_list): quarterbacks = Qb(*Qb_list[i]) i = i + 1
This repeatedly creates an instance of Qb and assigns it to the variable quarterbacks. quarterbacks always holds the last
instance to be created, the previous instance is destroyed. You want to create a list (not an instance of Qb but an ordinary list) which will hold these quarterback objects you are creating.
print (quarterbacks[2].last_name)
This tries to print the second something of quarterbacks. But since quarterbacks is a single object it fails.
So you need sometjing like this quarterbacks = [] # an empty list # get each list entry in turn for data in Qb_list: # create an object and add to the list of quarterbacks quarterbacks.append(Qb(*data)) And now print quarterbacks[2].last_name makes sense. It will print the last name of the 3rd entry.
In other words, define an instance of the Qb class called quarterbacks, and then "load" or instantiate instances of the class using the 6 sets of values from Qb_list.
An instance of Qb is just a quarterback object. You can't load it with instances of anything.
You might find it useful to read the OOP topic in my tutorial for a different explanation of OOP...
HTH -- Alan G Author of the Learn to Program web site http://www.alan-g.me.uk/ _______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: http://mail.python.org/mailman/listinfo/tutor