EOF problem with ENTER

Prasoon prasoonthegreat at gmail.com
Fri Jun 12 08:49:25 CEST 2009


On Jun 12, 11:28 am, Chris Rebert <c... at rebertia.com> wrote:
> On Thu, Jun 11, 2009 at 11:17 PM, Prasoon<prasoonthegr... at gmail.com> wrote:
> > I am new to python....
> > I have written the following program in python.It is the solution of
> > problem ETF in SPOJ.....
>
> > #Euler Totient Function
>
> > from math import sqrt
> > def etf(n):
> >   i,res =2,n
> >   while(i*i<=n):
> >      if(n%i==0):
> >            res-=res/i
> >      while(n%i==0):
> >            n/=i
> >      i+=1
> >   if(n>1):
> >        res-=res/n
> >   return res
>
> > def main():
> >  t=input()
> >  while(t):
> >    x=input()
> >    print str(etf(x))
> >    t-=1
>
> > if __name__ == "__main__":
> >  main()
>
> > The problem with my code is that whenever I press an extra "Enter"
> > button instead of getting the cursor moved to the next line.....I get
> > an error
>
> > _SyntaxError- EOF while parsing and the program terminates.........._
>
> > How should  the code be modified so that even after  pressing an extra
> > "Enter" button the cursor get moved to the next line instead to
> > throwing an exception......
>
> Use raw_input() instead of input() [at least until you switch to Python 3.x].
> input() does an implicit eval() of the keyboard input, which is (in
> part) causing your problem.
> Note that you'll need to explicitly convert the string raw_input()
> reads in using either int() or float() as appropriate.
>
> Still, you can't just enter extra lines and expect the program to
> automatically ignore them. You'll have to write the extra code
> yourself to handle empty input from the user.
>
> Cheers,
> Chris
> --http://blog.rebertia.com

I am using Python 2.6
I have modified that code
def main():
  t=int(raw_input())
  while(t):
    x=int(raw_input())
    print str(etf(x))
    t-=1

what should i do to handle new line and space......
We used to get spaces and newline in C using their ASCII values ...can
similar things be done here???

Please write the code snippet(by modifying my code) from which i can
understand something......!!!!!



More information about the Python-list mailing list