loop = 1
choice = 0 #holds the user choice for menu
while (loop == 1):
print ("Welcome to calci.py")
print ("your options are:")
print (" ")
print ("1. Addition")
print ("2. Subtraction")
print ("3. Multiplication")
print ("4. Division")
print ("5. Quit calculator.py")
print (" ")
choice = input("Choose your option: ")
if (choice == 1):
add1 = input("Add this: ")
add2 = input("to this: ")
print (add1, "+", add2, "=", add1 + add2)
elif (choice == 2):
sub2 = input("Subtract this: ")
sub1 = input("from this: ")
print (sub1, "-", sub2, "=", sub1 - sub2)
elif (choice == 3):
mul1 = input("Multiply this: ")
mul2 = input("with this: ")
print (mul1, "*", mul2, "=", mul1 * mul2)
elif (choice == 4):
div1 = input("Divide this: ")
div2 = input("by this: ")
print (div1, "/", div2, "=", div1 / div2)
elif (choice == 5):
loop = 0
print ("Thankyou for using calci.py!")
我是python世界的新手,我已编写并编译了计算器代码,但它无法正常工作,需要帮助!!
答案 0 :(得分:1)
您的代码:
choice = input("Choose your option: ")
if (choice == 1):
这里输入将返回字符串输出。所以在你的if条件中你需要这样做:
choice = input("Choose your option: ")
if (choice == '1'):
然后它会起作用。但请记住,它将在上面的示例中连接两个字符串。因此,您可能需要将该字符串转换为整数,然后执行算术。
所以你可以使用像
intchoice = int(choice)
if (intchoice == 1):
同样你需要关注你的add1 / add2和其他输入参数。
答案 1 :(得分:0)
我试图在终端中运行你的代码,它无限循环给定。 您最初将选项设置为零,但您的代码不处理零,因此它不知道该怎么做,所以它只是循环。 尝试添加一个else块和elif语句的结尾来捕获elif不会解释的任何内容。 EX:
else:
print("Error")
loop=0
我看到你使用while循环尝试让程序持续运行,直到用户退出。 尝试使用input()或raw_input()来获取操作的用户选择。除了那个伟大的工作之外!