> But back to your solution, the data is columnar, and some of > the fields are empty, Ah! You omitted that last little detail earlier! :-) > so I think I would have to modify your snippet above: In that case I'd use slicing to split the row as you suggested. The list of dictionaries approach is Ok but gives a very different solution to what you asked for.... Alan g.