High level csv reader
skip at pobox.com
skip at pobox.com
Wed Nov 1 06:12:05 EST 2006
George> It occured to me that most times I read a csv file, I'm often
George> doing from scratch things like assigning labels to columns,
George> mapping fields to the appropriate type, ignoring some fields,
George> changing their order, etc. Before I go on and reinvent the
George> wheel, is there a generic high level wrapper around csv.reader
George> that does all this ?
I'm not aware of anything that specifically addresses these ideas. Here are
some thoughts though:
* If you use the DictReader class you can ignore fields you aren't
interested in more easily since you access the fields of interest by
name and with the fieldnames parameter to the constructor can assign
column names to csv data which lacks it (use similar functionality in
DictWriter to create column labels on output). You can also specify
the restkey parameter to the constructor and thus only specify the
fields of interest in the fieldnames parameter. (I think. I've never
actually used that capability, but that's what the documentation
suggests.)
* There was a thread earlier this month with this subject:
paseline(my favorite simple script): does something similar exist?
Check it out for a number of different solutions to formatting the
fields in a line of text. The idea can easily be extended to a list
or dict of values instead, perhaps in a subclass of DictReader.
Skip
More information about the Python-list
mailing list