首页 > 解决方案 > 为什么我的 if 循环会抛出语法错误?

问题描述

我已经开始在 python 中制作一个计算器,它抛出了一个我无法摆脱的 pyflake 语法错误。

这是我到目前为止所做的:

import time
import math 
from clear_screen import clear

def add(x, y):
    return x + y
    
def subtract(x, y):
  return x - y

def multiply(x, y):
  return x * y

def divide(x, y):
  return x / y

def power(x, y):
  return x ** y
    
while 0 == 0:

  print ("======================")
  print ("calculator.exe")
  print ("======================")
  print ("")

  time.sleep(0.3)

  print ("1) Add ")
  print ("2) subtract ")
  print ("3) Multiply ")
  print ("4) Devide ")
  print ("5) Square Root ")
  print ("6) Power")
  print ("======================")
  x = input ("select operator ")
  if x == '5':
    num1 = int(input ("Type number "))
  elif x == '6':
    num1 = int(input ("Type number"))
    num2 = int(input ("Type Power"))
  else:
    num1 = int(input ("Type first number "))
    num2 = int(input ("Type Second number "))
  print ("======================")

  if x == '1':
    print (num1 ,"+",num2, "=" , add(num1,num2))
  
  elif x == '2':
    print (num1 ,"-",num2, "=" , subtract(num1,num2))
 
  elif x == '3':
    print (num1 ,"*",num2, "=" , multiply(num1,num2))
  
  elif x == '4':
    print (num1 ,"/",num2, "=" , divide(num1,num2))
  
  elif x == '5':
    print ("√", num1, "=" ,(math.sqrt(num1)))   
  
  elif x == "6":
    print (num1,"^",num2, "=" , power(num1,num2))  

  else:
    print ("Opperator not found")
  print ("======================")

  time.sleep(3)
  clear()

(原始代码可在https://repl.it/join/mqrgvlcf-rosmonautical获得)(我不在乎它的效率有多低,它仍然是我的)

标签: pythonsyntax-error

解决方案


您在上一条)语句的末尾缺少 a :

if x == '1':
    print (num1 ,"+",num2, "=" , add(num1,num2))
  
elif x == '2':
    print (num1 ,"-",num2, "=" , subtract(num1,num2))
 
elif x == '3':
    print (num1 ,"*",num2, "=" , multiply(num1,num2))
  
elif x == '4':
    print (num1 ,"/",num2, "=" , divide(num1,num2))
  
elif x == '5':
    print ("√", num1, "=" ,(math.sqrt(num1))) # Last ")" was missing here
  
elif x == "6":
    print (num1,"^",num2, "=" , power(num1,num2)

推荐阅读