Howto: extract a 'column' from a list of lists into a new list?

Max M maxm at
Tue Jul 1 10:10:38 CEST 2003

Greg Brunet wrote:

> Even better yet...  the reason I'm trying to do this is to make it easy
> to refer to a field by the field name as well as the field number.  I
> expect to be reading all of the data into a list (1 per row/record) of
> row objects. If someone wants to be able to refer to FldA in record 53,
> then I'd like them to be able to use: "row[52].FldA" instead of having
> to use "row[52][4]" (if it's the 5th field in the row).  I was planning
> on using the __getattr__ method in my row object like the following:

If that is all you want to do, this might be the simlest approach:

fields = [
     ('STOCKNO', 'C', 8, 0),
     ('DACC', 'C', 5, 0),
     ('DEALERACCE', 'C', 30, 0),
     ('D-ACCRTL', 'C', 9, 0),
     ('D-ACCCST', 'C', 9, 0)

def byName(field, name):
     fieldNames = {
     return field[fieldNames[name]]

for field in fields:
     print byName(field, 'name')

regards Max M

More information about the Python-list mailing list