Bryan Fodness wrote:
> I would like to have my data in a format so that I can create a contour plot.
> 
> My data is in a file with a format, where there may be multiple fields
> 
> field = 1
> 
> 1a    0

If your data is really this regular, it is pretty easy to parse. A 
useful technique is to access a file's next method directly. Something 
like this (not tested!):

f = open('data.txt')
fields = {} # build a dict of fields
try:
   while True:
     # Get the field line
     line = f.next()
     field = int(line.split()[-1]) # last part of the line as an int

     f.next() # skip blank line

     data = {} # for each field, map (row, col) to value
     for i in range(20): # read 20 data lines
       line = f.next()
       ix, value = f.split()
       row = int(ix[:-1])
       col = ix[-1]
       data[row, col] = int(value)

     fields[field] = data

     f.next()
except StopIteration:
   pass

This builds a dict whose keys are field numbers and values are 
themselves dicts mapping (row, col) pairs to a value.

> where,
> 
>                            a           b
>   a           b                                 a            b
> 10    0000000000|0000000000   0000000000|0000000000   0000000000|0000000000
> 9     0000000000|0000000000   0000000000|0000000000   0000000000|0000000000
> 8     0000011111|1111100000   0000000000|0000000000   0000000000|0000000000
> 7     0000011111|1111100000   0000001111|1111000000   0000000000|0000000000
> 6     0000011111|1111100000   0000001111|1111000000   0000000111|1110000000
> 5     0000011111|1111100000   0000001111|1111000000   0000000111|1110000000
> 4     0000011111|1111100000   0000001111|1111000000   0000000000|0000000000
> 3     0000011111|1111100000   0000000000|0000000000   0000000000|0000000000
> 2     0000000000|0000000000   0000000000|0000000000   0000000000|0000000000
> 1     0000000000|0000000000   0000000000|0000000000   0000000000|0000000000

I guess this is the intended output? Do you want to actually create a 
printed table like this, or some kind of data structure that represents 
the table, or what?

Kent
_______________________________________________
Tutor maillist  -  Tutor@python.org
http://mail.python.org/mailman/listinfo/tutor

Reply via email to