分析时出现意外的EOF错误;error显示空的不存在的行



我用python写了一个脚本来计算基本的二次方程。这是我第一次为自己制作复杂的剧本。但当我运行它时,它在解析时显示了意外的eof错误,原因显示为第60行的空行。我只有59岁以前的线路。

我使用的脚本是:-

a=input("write an")
b=input("write bn")
c=input("write cn")
import cmath
import math
import time
D=b**2 - 4*a*c 
def a_set(a,b,c):
D=b**2 - 4*a*c
T=cmath.sqrt(D)
x1=(-b + T)/(2*a)
x2=(-b - T)/(2*a)
return x1,x2#,D
def b_set(a,b,c):
D=b**2 - 4*a*c
G=math.sqrt(D)
x1=(-b + G)/(2*a)
x2=(-b - G)/(2*a)
return x1,x2#,D
sol1=a_set(a,b,c)[0]
sol2=a_set(a,b,c)[1]
# sol3=a_set(a,b,c)[2]
ans1=b_set(a,b,c)[0]
ans2=b_set(a,b,c)[1]
# ans3=b_set(a,b,c)[2]
try:
a=int(a)
try:
D== -D 
print("Imaginary roots found:-n%e and %e" %(sol1,sol2))
except ValueError:
try:
ans1==str("0") 
print("Roots are equal")
except ValueError: 
print("answer is %r,%r" %(ans1,ans2))
except ValueError:
try:
a=float(a)
try:
D== -D
print("Imaginary roots found:-n%e and %e" %(sol1,sol2))
except ValueError:
try:
sol1==str("0")
print("Roots are equal")
except ValueError:
print("answer is %r,%r" %(sol1,sol2))       

我得到的错误是:-

$ python maths.py
File "maths.py", line 60
^
SyntaxError: unexpected EOF while parsing

这是因为您在一次尝试后忘记添加exception子句。试试这个:


except ValueError:
try:
a=float(a)
try:
D== -D
print("Imaginary roots found:-n%e and %e" %(sol1,sol2))
except ValueError:
try:
sol1==str("0")
print("Roots are equal")
except ValueError:
print("answer is %r,%r" %(sol1,sol2))       

except:
pass

对于代码的最后一部分。

最新更新