[Tutor] File IO
Michael Haft
m.haft at abdn.ac.uk
Thu Nov 3 22:34:23 CET 2005
Hello,
I tried the following code:
def readSOMNETM(inputName):
input = open(inputName, "r")
result = []
for line in input:
fields = line.split()
data = fields[1] + fields[2] + fields[7]
result.append(data)
input.close()
return result
print "Here goes"
print "Enter filename:"
filename = raw_input("Name:")
print readSOMNETM(filename)
print "might work"
on a file that lookes like this:
Monthly Weather Data, LAU73M.MET, converted from:
BAD LAUCHSTAEDT; DAILY METEOROLOGICAL DATA FOR 01/01/1973-31/12/1973
VAP, DEWP CALCULATED FROM MEASURED AVTEMP AND HUMID DATA
MONTH RAIN AVTEMP S10 RAD SUN WIND EVAPW
**************************************************************
1 22.5 0.3 * 54.6 15.1 * 11.9
2 16.1 1.8 * 110 51.1 * 18.1
3 16.4 4.8 * 227.5 94.5 * 36.8
4 19.5 5.9 * 286.3 89 * 45.5
5 36.1 13.2 * 448.5 164.6 * 83
6 36 16.9 * 525.7 208.8 * 105.7
7 37.7 18.2 * 459.7 165.4 * 98.6
8 29.3 18.2 * 463.8 206.8 * 97.9
9 27 14.8 * 277.5 119.5 * 58.7
10 57.6 7.6 * 158.7 72.2 * 31.3
11 23.4 3.9 * 98.3 75.6 * 19.1
12 14 0.7 * 55.5 38 * 12.5
And recieved the following error:
Traceback (most recent call last):
File "C:\Python24\INProgress.py", line 15, in -toplevel-
print readSOMNETM(filename)
File "C:\Python24\INProgress.py", line 6, in readSOMNETM
data = fields[1] + fields[2] + fields[7]
IndexError: list index out of range
Essentially I'm trying to write a bit of code that can take any of the
fields in the above data i.e. rain temp evap for each month for a hundred
or so files like this one and spit out a file at the end that has the data
in a different format.
Any help would be very much appreciated I need to get this done by the end
of next week
Thanks
Mike
More information about the Tutor
mailing list