首页 > 解决方案 > 当我运行这个脚本时,它会在 else 行告诉 IdentationError,为什么?

问题描述

#Returns the sum of num1 and num2
def add(num1, num2):
    return num1 + num2

#Returns the result of subtracting num1 - num2
def sub(num1, num2):
    return num1 - num2

#Returns the result of multiplying num1 * num2
def mul(num1, num2):
    return num1 * num2

#Returns the result of dividing num1 / num2
def div(num1, num2):
    return num1 / num2


def main():
    operation = input("What do you want to do(+,-,*,/): ")
    if(operation != '+' and operation != '-' and operation != '*' and operation != '/' ):
       #invaid operation
       print("you must enter a valid operation")
    else:
        var1 = int(input("emter num1: "))
        var2 = int(input("Enter num2: "))
            if(operation == '*'):
             print(add(var1, var2))
             elif(operation == '/'):
                print(div(var1, var2))
            elif(operation == '-'):
                print(sub(var1, var2))
            elif:
                print(mul(var1, var2)) 


main()

标签: python

解决方案


你的整体ifelif块是错误的。正确的意图如下所示:

else:
    var1 = int(input("emter num1: "))
    var2 = int(input("Enter num2: "))
    if(operation == '*'):
        print(add(var1, var2))
    elif(operation == '/'):
        print(div(var1, var2))

等等。在继续之前,您应该考虑阅读更多关于 python 中的缩进的信息。它不仅在 Python 中是必需的,而且也是每种语言的最佳实践(据我所知),以使您的代码更具可读性。


推荐阅读