Seperating CSV rows into new, seperate files

Maik Röder roeder at berg.net
Sat Aug 14 10:00:29 EDT 2004


Hi TobyB,

> Hi,
> I've searched the group and need more information and guidance on this
> issue I need to resolve next week. I work for the local school system
> and I am working on a way to parse a CSV file of class lists from MS
> Excel.  It is a ~2MB file with all teachers and all their classes in
> it.  I thought I would use Python to do this since many people I know
> tell me how great it is. 

Pyhton is a good choice for treating texts.

> The real sticking point is there are
> duplicates of each teacher's classes embedded in the file (don't ask
> why).  I want to break up the source file into the seperate class
> files without duplication and use the teachers name, coursecode and
> section in the filename.
> 
> Example Data:
> Last Name	First Name	Grade	Period	Teacher Name	
> SMITH           JOHN	         8      1	JONES	SALLY
> 
> Student ID		Course Code	Course Title	
> 12345678	        1234	         ALGEBRA I
> 
> Course Section	Session
> 1	        0
> 
> 
> The course code and section number are the same in the duplicate
> classes.  The difference is that the session number changes.   I'm
> thinking that I will need to somehow iterate through the lines and
> break the class when the course code changes and/or section change
> (course codes can be the same but section numbers change with each
> class).  Then I have to monitor the session number to see if there is
> a duplicate course code and section but a different session number
> would indicate that the class is a duplicate. Essentially, the session
> number will be 0, 1, or 2 for a total of three lists of the same
> class. Hopefully that makes sense.  Again don't ask why the data is
> like this.
> 
> My humble attempts have not been very successful.  I've been trying
> the csv modules to read the file but I am not sure how to procede
> after that.
> 
> Any guidance is greatly appreciated.

Use Python lists and dictionaries.

Best regards,

Maik Röder





More information about the Python-list mailing list