Python 3程序中的Elif语法错误无效

时间:2014-12-07 20:29:57

标签: python-3.x

我的代码的elif语句中出现了无效的语法错误。我做错了什么?

# define the functions for each math operation
#
def add (a, b) :

    return a + b

def subtract (a, b) :

    return a - b

def multiply (a, b) :

    return a * b

def divide (a, b) :

    return a / b

def remainder (a, b) :

    return a % b

def welcome_message ( first_name ) :
    print ("Hi ", first_name, " " ". Welcome to Project 3!")

welcome_message("Prof. Shah")

loop = 1

while loop ==1:
    print ("Select operation.")
    print ("1. Add")
    print ("2. Subtract")
    print ("3. Multiply")
    print ("4. Divide")
    print ("5. Remainder")
    choice = input("Enter choice :")
    num1 = int(input |"Please enter your first number: ")
    num2 = int(input |"Please enter your second number: ")

    if choice == '1' :
                print(num1, "+", num2, "=", add (num1,num2)
        elif choice == '2' :
                print(num1, "-", num2, "=", subtract (num1,num2)
        elif choice == '3' : 
                print(num1, "*", num2, "=", multiply (num1,num2)
        elif choice == '4' :
                print(num1, "/", num2, "=", divide (num1,num2)
        elif choice == '5' :
                print(num1, "%", num2, "=", remainder (num1,num2)

2 个答案:

答案 0 :(得分:2)

if choice == '1' :
    print(num1, "+", num2, "=", add(num1,num2))
elif choice == '2' :
    print(num1, "-", num2, "=", subtract(num1,num2))
...

您的缩进似乎已关闭,并且您在每个打印声明的末尾都缺少一个右括号。

答案 1 :(得分:0)

if choice == '1' :
                print(num1, "+", num2, "=", add (num1,num2)
        elif choice == '2' :
                print(num1, "-", num2, "=", subtract (num1,num2)
        elif choice == '3' : 
                print(num1, "*", num2, "=", multiply (num1,num2)
        elif choice == '4' :
                print(num1, "/", num2, "=", divide (num1,num2)
        elif choice == '5' :
                print(num1, "%", num2, "=", remainder (num1,num2)

问题在这里。如果"如果"阻止即将进行处理,然后你必须先从ifif开始。喜欢:

if choice == '1' :
                print(num1, "+", num2, "=", add (num1,num2)
elif choice == '2' :
                print(num1, "-", num2, "=", subtract (num1,num2)
elif choice == '3' : 
                print(num1, "*", num2, "=", multiply (num1,num2)
elif choice == '4' :
                print(num1, "/", num2, "=", divide (num1,num2)
elif choice == '5' :
                print(num1, "%", num2, "=", remainder (num1,num2)