EOF problem with ENTER
Prasoon
prasoonthegreat at gmail.com
Fri Jun 12 02:48:01 EDT 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=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