Marius Retegan wrote:
Hi,
On Fri, May 29, 2009 at 2:09 AM, Gary Herron
<gher...@islandtraining.com <mailto:gher...@islandtraining.com>> wrote:
Marius Retegan wrote:
Hello
I have simple text file that I have to parse. It looks
something like
this:
parameters1
key1 value1
key2 value2
end
parameters2
key1 value1
key2 value2
end
So I want to create two dictionaries parameters1={key1:value1,
key2:value2} and the same for parameters2.
I would appreciate any help that could help me solve this.
Thank you
This looks like a homework problem.
It's not. I'm passed homework age.
But even if it's not, you are not likely to find someone who is
willing to put more work into this problem than you have.
So why don't you show us what you've tried, and see if someone is
willing to make suggestions or answer specific question about your
attempt at a solution?
I don't now if posting a code that gets into a while loop and never
stops would demonstrate to you that I've tried. Be assured that before
posting to the list I did try to solve it myself, because I knew that
I might get an answer like RTFM or similar.
Maybe I'm not smart enough, but I can't make python to start reading
after the "parameter1" line and stop at the "end" line. That's all I
want a small piece of pseudocode to do just that.
OK. Assuming you are open a file with something like:
f = open('data', 'r')
Then this will read lines up to the first "parameters" line
for line in f:
if line.startswith('parameters'):
break
At this point, line contains 'parameters1\n'. Do with it as you will.
Then read and process lines until an end line is reached
for line in f:
if line.beginswith('end'):
break
# Here line contains ' key1 value1\n'.
# Perhaps use line.strip to remove the white space on each end
# and k,v =line.split() to split out the two values on the line.
You'll need more:
A loop to keep the above two going until the end of file
A way to recognize the end of the file.
Gary Herron
Thanks
Gary Herron
--
http://mail.python.org/mailman/listinfo/python-list