#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()
答案 0 :(得分:0)
您的整个if
和elif
块是错误的。正确的意图如下所示:
else:
var1 = int(input("emter num1: "))
var2 = int(input("Enter num2: "))
if(operation == '*'):
print(add(var1, var2))
elif(operation == '/'):
print(div(var1, var2))
,依此类推。您应先考虑reading more about indentation in python,然后再继续。这不仅是Python所必需的,而且也是每种语言(据我所知)的最佳实践,以使您的代码更具可读性。
答案 1 :(得分:0)
Python使用空格来决定代码如何组合在一起。
这运行bar
并且baz
为foo
为真:
如果foo: 酒吧() baz()
如果bar
为真,则运行foo
,并且始终运行baz
:
if foo:
bar()
baz()
这根本不起作用:
if foo:
bar()
baz()
如果缩进不一致,Python将抛出错误并放弃。
就您而言,这里的缩进似乎很糟糕:
if(operation == '*'):
print(add(var1, var2))
elif(operation == '/'):
print(div(var1, var2))
elif(operation == '-'):
print(sub(var1, var2))
elif:
print(mul(var1, var2))
您的print
缩进了少于三个空格(这是if
语句的块的一部分),而后面的elif
块缩进了三个空格(它应该与if
语句处于同一级别)
if(operation == '*'):
print(add(var1, var2))
elif(operation == '/'):
print(div(var1, var2))
elif(operation == '-'):
print(sub(var1, var2))
elif:
print(mul(var1, var2))
顺便说一句,乘法和加法都被翻转了!
答案 2 :(得分:-1)
您的缩进被弄乱了。试试这个:
#Returns the sum of num1 and num2#Returns
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("Enter num1: "))
var2 = int(input("Enter num2: "))
if(operation == '*'):
print(add(var1, var2))
elif(operation == '/'):
print(div(var1, var2))
elif(operation == '-'):
print(sub(var1, var2))
else:
print(mul(var1, var2))
main()