[Tutor] trouble with if

John Fouhy john at fouhy.net
Thu Oct 25 04:25:47 CEST 2007


On 25/10/2007, Bryan Fodness <bryan.fodness at gmail.com> wrote:
> I have the following code, it keeps giving me a value of 1 for e.
>
> for line in file('21Ex6MV_oaf.dat'):
>     oa, openoa, w15, w30, w45, w60 = line.split()
>     if (float(oa) == round(offaxis)) and (eff_depth < 10 and unblockedFS >
> 15):
>         e = float(openoa)
>     else:
>         e = 1
>
> If I comment out the else, I get the correct value
>
> for line in file('21Ex6MV_oaf.dat'):
>     oa, openoa, w15, w30, w45, w60 = line.split()
>     if (float(oa) == round(offaxis)) and (eff_depth < 10 and unblockedFS >
> 15):
>         e = float(openoa)
> #    else:
> #        e = 1

Maybe you need a 'break' statement after 'e = float(openoa)'?

As written, e will have whatever value is appropriate for the last
line of your input file.

-- 
John.


More information about the Tutor mailing list