在python中执行代码时使用EOFerror

在python中执行代码时使用EOFerror,python,Python,当我运行程序时,我得到了EOFError…请帮助 import sys t=raw_input() while(t>0): pa=raw_input() if(pa>0.500000): ans=10000*pa*(3-(2*pa)) print '%0.6f' % ans if(pa<=0.500000): pa=1-pa; ans=10000*pa*(3-(2*pa))

当我运行程序时,我得到了EOFError…请帮助

import sys
t=raw_input()

while(t>0):
    pa=raw_input()
    if(pa>0.500000):
        ans=10000*pa*(3-(2*pa))
        print '%0.6f' % ans
    if(pa<=0.500000):
        pa=1-pa;
        ans=10000*pa*(3-(2*pa))
        print '%0.6f' % ans    
    t=t-1
导入系统 t=原始输入() 而(t>0): pa=原始输入() 如果(pa>0.500000): ans=10000*pa*(3-(2*pa)) 打印“%0.6f”%ans
如果(pa您在这里确实没有提供足够的输入,但您可以尝试以下方法:

import sys

t=raw_input()
try:
    t=int(t)
except:
    sys.exit(1)

while(t>0):
    pa=raw_input()
    try:
        pa=float(pa)
    except:
        break
    if(pa>0.500000):
        ans=10000*pa*(3-(2*pa))
        print '%0.6f' % ans
    if(pa<=0.500000):
        pa=1-pa;
        ans=10000*pa*(3-(2*pa))
        print '%0.6f' % ans
    t=t-1
导入系统 t=原始输入() 尝试: t=int(t) 除: 系统出口(1) 而(t>0): pa=原始输入() 尝试: pa=浮动(pa) 除: 打破 如果(pa>0.500000): ans=10000*pa*(3-(2*pa)) 打印“%0.6f”%ans
如果(p)您是如何运行文件的?必须有人将输入添加到
t=raw\u input()
raw\u input()中将返回字符串。在进行比较之前,您需要将其转换为浮点。@rajpy,这并不能解释它由您的输入引起的错误?您的输入是什么?此外,您没有提示消息,添加提示消息可能有助于您了解代码在做什么。@Elazar:是的。我知道。只是指出他做错了。