看看我的代码是什么样的
x=25
epsilon=0.01
numguesses=0
low=0.0
high=x
ans=high+low/2.0
while abs(ans**2-x)>= epsilon and ans <=x:
numguesses+=1
if ans**2<x:
low=ans
else:
high=ans
ans=(high+low)/2.0
print (numguesses)
此外,我无法在Python 3.0上使用raw_input
,但在其中无法使用2.4
答案 0 :(得分:1)
我无法重现此错误,因为当我修复此问题时,我会获得SyntaxError
,然后获得IndentationError
,然后......
SyntaxError: unexpected EOF while parsing
通常表示以下之一:
SyntaxError
- 但如果您在代码的最后部分执行此操作,则会出现此错误。)由于你的代码没有引号,所有的parens似乎都是平衡的,但你在这里发布的代码中有缩进错误,我愿意打赌它是你实际代码中的缩进错误(但可能与您在此处发布的内容不同 - else
必须与if
对齐,而不是与其正文对齐。
然而,还有另一种可能性。您上面显示的代码使用的是raw_input
,但如果您改为使用input
(或直接调用eval
或exec
),则可以通过解析用户的错误获得完全相同的错误输入,如果用户输入不平衡的报价或表示等等。