当我已经指定了错误消息时,如何删除在使用python的计算器中完成的计算
我上周开始学习python。我以前的C++编程背景很差,但很差。我开始使用python,并想制作一个复杂的计算器。我试图更好地学习限制条件和if语句,所以我决定将计算器仅用于正值。 然而,在作出这一声明时。此时会显示消息,但也会显示计算值。 代码如下:当我已经指定了错误消息时,如何删除在使用python的计算器中完成的计算,python,python-3.x,Python,Python 3.x,我上周开始学习python。我以前的C++编程背景很差,但很差。我开始使用python,并想制作一个复杂的计算器。我试图更好地学习限制条件和if语句,所以我决定将计算器仅用于正值。 然而,在作出这一声明时。此时会显示消息,但也会显示计算值。 代码如下: op = "" while op != "#": num1 = float(input("Enter your first number:")) op = inp
op = ""
while op != "#":
num1 = float(input("Enter your first number:"))
op = input("Enter an operator: ")
num2 = float(input("Enter your second number: "))
if num1 < 0 or num2 < 0:
print("Calculator accepts positive values only")
if op == "+":
print(num1+num2)
elif op=="-":
print(num1-num2)
elif op=="*":
print(num1*num2)
elif op=="/":
print(num1/num2)
else:
print("end of program")
op=“”
当op!="#":
num1=浮点(输入(“输入您的第一个数字:”)
op=输入(“输入运算符:”)
num2=浮点(输入(“输入第二个数字:”)
如果num1<0或num2<0:
打印(“计算器仅接受正值”)
如果op==“+”:
打印(num1+num2)
elif op==“-”:
打印(num1-num2)
elif op==“*”:
打印(num1*num2)
elif op==“/”:
打印(num1/num2)
其他:
打印(“程序结束”)
如何消除计算出的数字的输出?当我输入负数时,我希望程序重新启动循环
有没有一种方法可以“打破”循环,然后重新进行?
如果这是一个非常琐碎的问题,我深表歉意,我最近刚开始,并希望从stackoverflow的有经验的用户那里学习。
break
和continue
是您正在寻找的操作员
break
将完全停止循环,continue
将停止循环的当前迭代并继续下一个循环
op = ""
while op != "#":
num1 = float(input("Enter your first number:"))
op = input("Enter an operator: ")
num2 = float(input("Enter your second number: "))
if num1 < 0 or num2 < 0:
print("Calculator accepts positive values only")
continue #start again
if op == "STOP":
break #quit
if op == "+":
print(num1+num2)
op=“”
当op!="#":
num1=浮点(输入(“输入您的第一个数字:”)
op=输入(“输入运算符:”)
num2=浮点(输入(“输入第二个数字:”)
如果num1<0或num2<0:
打印(“计算器仅接受正值”)
继续#重新开始
如果op==“停止”:
中断#退出
如果op==“+”:
打印(num1+num2)
break
和continue
是您正在寻找的操作员
break
将完全停止循环,continue
将停止循环的当前迭代并继续下一个循环
op = ""
while op != "#":
num1 = float(input("Enter your first number:"))
op = input("Enter an operator: ")
num2 = float(input("Enter your second number: "))
if num1 < 0 or num2 < 0:
print("Calculator accepts positive values only")
continue #start again
if op == "STOP":
break #quit
if op == "+":
print(num1+num2)
op=“”
当op!="#":
num1=浮点(输入(“输入您的第一个数字:”)
op=输入(“输入运算符:”)
num2=浮点(输入(“输入第二个数字:”)
如果num1<0或num2<0:
打印(“计算器仅接受正值”)
继续#重新开始
如果op==“停止”:
中断#退出
如果op==“+”:
打印(num1+num2)
您真正需要做的就是将if语句包装到else循环中
op=“”
当op!="#":
num1=浮点(输入(“输入您的第一个数字:”)
op=输入(“输入运算符:”)
num2=浮点(输入(“输入第二个数字:”)
如果num1<0或num2<0:
打印(“计算器仅接受正值”)
其他:
如果op==“+”:
打印(num1+num2)
elif op==“-”:
打印(num1-num2)
elif op==“*”:
打印(num1*num2)
elif op==“/”:
打印(num1/num2)
其他:
打印(“程序结束”)
第一个if语句检查数字是否为正数。如果是负数,循环将重新启动,但是如果是正数,它将测试运算符等于什么。您真正需要做的就是将If语句包装到else循环中
op=“”
当op!="#":
num1=浮点(输入(“输入您的第一个数字:”)
op=输入(“输入运算符:”)
num2=浮点(输入(“输入第二个数字:”)
如果num1<0或num2<0:
打印(“计算器仅接受正值”)
其他:
如果op==“+”:
打印(num1+num2)
elif op==“-”:
打印(num1-num2)
elif op==“*”:
打印(num1*num2)
elif op==“/”:
打印(num1/num2)
其他:
打印(“程序结束”)
第一个if语句检查数字是否为正数。如果为负值,循环将重新启动,但是如果为正值,它将测试运算符等于什么。当您输入负值时,您的代码将显示消息和ans,因为If op='+'的条件应为elif op='+'。这是因为它检查第一个条件为真,因此它会打印消息,但由于第二个条件也有if,因此如果操作员为+,则显示ans,则结果为真。下面是正确代码的样子:
op = ""
while op != "#":
num1 = float(input("Enter your first number:"))
op = input("Enter an operator: ")
num2 = float(input("Enter your second number: "))
if num1 < 0 or num2 < 0:
print("Calculator accepts positive values only")
elif op == "+":
print(num1+num2)
elif op=="-":
print(num1-num2)
elif op=="*":
print(num1*num2)
elif op=="/":
print(num1/num2)
else:
print("end of program")
op=“”
当op!="#":
num1=浮点(输入(“输入您的第一个数字:”)
op=输入(“输入运算符:”)
num2=浮点(输入(“输入第二个数字:”)
如果num1<0或num2<0:
打印(“计算器仅接受正值”)
elif op==“+”:
打印(num1+num2)
elif op==“-”:
打印(num1-num2)
elif op==“*”:
打印(num1*num2)
elif op==“/”:
打印(num1/num2)
其他:
打印(“程序结束”)
当您输入负值时,您的代码将显示消息和ans,因为如果op='+'的条件应为elif op='+'。这是因为它检查第一个条件为真,因此它会打印消息,但由于第二个条件也有if,因此如果操作员为+,则显示ans,则结果为真。下面是正确代码的样子:
op = ""
while op != "#":
num1 = float(input("Enter your first number:"))
op = input("Enter an operator: ")
num2 = float(input("Enter your second number: "))
if num1 < 0 or num2 < 0:
print("Calculator accepts positive values only")
elif op == "+":
print(num1+num2)
elif op=="-":
print(num1-num2)
elif op=="*":
print(num1*num2)
elif op=="/":
print(num1/num2)
else:
print("end of program")
op=“”
当op!="#":
num1=浮点(输入(“输入您的第一个数字:”)
op=输入(“输入运算符:”)
num2=浮点(输入(“输入第二个数字:”)
如果num1<0或num2<0:
打印(“计算器仅接受正值”)
elif op==“+”:
打印(num1+num2)
elif op==“-”:
打印(num1-num2)
elif op==“*”:
打印(num1*num2)
elif op==“/”:
打印(num1/num2)
其他:
打印(“程序结束”)
这里没有循环!您需要适当地缩进代码,尤其是当您在这里以w的形式提问时