I'm confused.  If you do (using W G's variable names)
    for refSymbol in symbols.readlines():
       print refSymbol
won't all the lines be printed?  Doesn't the "for" loop process once for each 
item in the array returned by readlines (changing refSymbol each time through 
the loop), thus accomplishing what was desired?

It would seem right to me to store the result of myfile.readlines before doing 
the outer loop, so it's not read each time through the loop through the lines 
of the symbols file.

Isn't there an idiom to remove the trailing \n chars (and to completely remove 
the "lines" that are only a newline)?  I've been Ruby-ing too much to remember 
the Python idiom for that.

At 06:55 PM 11/30/2005, [EMAIL PROTECTED] wrote
>I like the idea of using a dictionary as a solution to the problem. 
>
>The reason you are not seeing the nested loop run twice is because of the 
>following:
>
>>>> fd = file("C:\\defragreport.txt")
>>>> fd.readlines()
>['11/29/2005\n', '\n', '10:32:32 PM\n', '\n', 'Drive C: Defrag completed 
>successfully\n', '\n']
>>>> fd.readlines()
>[]
>>>>
>
>When you call "readlines()" on the open file, it reads the contents of the 
>complete file. Calling it again returns an empty list. You would have to 
>open/read/close the file in each pass. Thus, the dictionary solution saves you 
>from doing this.
>
>Mike
>
> 
>> > -----Original Message-----
>> > From: [EMAIL PROTECTED] [mailto:pythondotnet-
>> > [EMAIL PROTECTED] On Behalf Of W G
>> > Sent: Tuesday, November 29, 2005 2:53 PM
>> > To: pythondotnet@python.org
>> > Subject: [Python.NET] Nested Loops
>> >
>> > Hello,
>> >
>> > The follow code willl read lines of two text files. It supposed to take
>> > the
>> > first line of the first text file and compare it to all the lines of the
>> > second text file, then go to the next line of the first text file and do
>> > the
>> > same and so on.
>> >
>> > The problem is that once the inner loop is finished, it never goes in
>> that
>> > loop again. Any suggestions?
>> >
>> > Thank you,
>> > Wes
>> >
>> >
>> > The Code:
>> >
>> >
>> > for refSymbol in symbols.readlines():
>> >     for lookupSymbol in myfile.readlines():
>> >         showme = lookupSymbol.split('\t')
>> >         if showme[3] == refSymbol.strip():
>> >             priceNew.write(refSymbol.strip()+" "+showme[10])


J. Merrill / Analytical Software Corp

_________________________________________________
Python.NET mailing list - PythonDotNet@python.org
http://mail.python.org/mailman/listinfo/pythondotnet

Reply via email to