First up please give a sensible subject, say "problem parsing csv file".

I'm assuming the crud shown below is due to you posting in html, please use plain text instead.

On 20/03/2013 06:12, Arijit Ukil wrote:
I am new to python. My intention is to read the file digi.txt and store
in separate arrays all the values of each columns. However, the
following program prints only the last value, i.e. 1350696500.0.
Please help to rectify this.

f = open (/"digi.txt"/, /"r+"/)

You might like to use the with statement as it saves the explicit close later. Do you really need update mode? I'll assume not.

with open('digi.txt', 'r') as f:


datafile = f.readlines()

datafile is a poor name, it's the contents of the file here not the file itself.


list_of_lists = datafile

This gives another name for datafile which you only use in the for loop, you can use datafile directly.

fordata inlist_of_lists:
     lstval = data.split (/','/)

The csv module from the standard library can look after this for you.

     timest = float(lstval[0])
     energy = float(lstval[1])

You do nothing with timest and energy within the for loop.


f.close()
printtimest

You're printing the last value for timest here.

So you need something like the following, I'll leave you to look up the csv module if you're interested.

with open('digi.txt', 'r') as f:
    lines = f.readlines()
    timestamps = []
    energies = []
    for line in lines:
        splits = line.split(',') # I'll admit not the best name
        timestamps.append(float(splits[0]))
        energies.append(float(splits[1]))

    # process timestamps and energies to your heart's content


Regards,
Arijit Ukil

--
If you're using GoogleCrap™ please read this http://wiki.python.org/moin/GoogleGroupsPython.

Mark Lawrence

_______________________________________________
Tutor maillist  -  [email protected]
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor

Reply via email to