write file

miguel olivares varela klica_sk8 at hotmail.com
Tue Jul 5 23:25:22 CEST 2011


i got a csv file that i need to modify and create a new one,  i have no problem to read mi 'test.cvs' which is the source file but when i try to create a new one with the modifications i only got the first row in my 'out.csv' file.  I think there is somethng wrong in my loop because i can't  put into the rest.   

this is my an example of source file:
John;Smith;20110128 105840;33611111111
Mike;Brown;20110128 105842;33622222222
James;Ryan;20110128 105850;33633333333
Barry;Jackson;20110128 105847;33644444444

[here my code:]

import sys
import csv
import os
import glob
import time

dir_cdr = "/tmp"
#loop to find files csv in a directory and read thoses files
for cdr_files_in in glob.glob(os.path.join(dir_cdr, '*.csv') ):
        file_source = open(cdr_files_in, 'r')
        reader = csv.reader(file_source, delimiter=';', quoting=csv.QUOTE_NONE)
                for data in reader:
                        if data:
                                firstname = data[0]
                                lastname = data[1]
                                date_source = data[2]
                                phone = data[3]
                                #Date to epoch
                                timestamp=int(time.mktime(time.strptime(date_cdr, "%Y%m%d %H%M%S")))
                                fout = open("out.csv", "w")
                                print >>fout, lastname, firstname, timestamp, phone
        except csv.Error, e:
                print e
                sys.exit('file %s, line %d: %s' % (file_source, reader.line_num, e)

Smith John 1296208720 33611111111

Could you help me?

Best Regards,

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-list/attachments/20110705/f5efdf30/attachment.html>

More information about the Python-list mailing list