有一个Python if语句语法错误,请帮助

时间:2017-11-19 05:35:10

标签: python-3.x

我目前正在处理一些python代码,但它在第二个if语句中给我一个语法错误'。当我运行它时,它会突出显示' quadpos'。什么似乎是问题?

print(' Hello, press enter to continue')

print('What is your A value?')      # Asking for the A value
myA = input()
myA = int(myA)
print('What is your B value?')      # Asking for the B value
myB = input()
myB = int(myB)
print('What is your C value?')      # Asking for the C value
myC = input()
myC = int(myC)

quad = ((myB * myB) - (4 * myA * myC))
if int(quad) < int(0):
   print('Cannot process Value')
else:
   quad2 = (int(quad)**(1/2.0))
   if int(myA) > int(0):
       quadneg = ((int(-myB) - int(quad2)) / (2 * myA) 
       quadpos = ((int(-myB) + int(quad2)) / (2 * myA)
       print(int(quadneg))
       print(int(quadpos))
   else:
          quad3 = ((int(-myB) * int(-myB)) + int(quad2)) / (2 * myA) 
          print (int(quad3))

2 个答案:

答案 0 :(得分:1)

错误在第21行和第22行根据附图

print( int( quardneg) )
print( int(quardpos) )

其次是else语句

if else语句的语法是:

If condition:
     Code...
Else 
    Code ..

你在做:

 If condition:
     Code
 Code -- Error is here
 Else 
     Code.

您无法将代码放在if语句的同一缩进中,如果您这样做,则必须将else替换为下一个if

答案 1 :(得分:1)

你似乎缺少一个支架。

quadneg = ( (int(-myB) - int(quad2)) / (2 * myA) )
quadpos = ( (int(-myB) + int(quad2)) / (2 * myA) )