迭代计数器Python3x
因此,我用Python构建了一个简单的计算器,用户输入两个数字和一个运算符,然后给出答案。他们还可以选择再次运行计算器。我想对答案进行编号,使每个答案都显示“答案1等于x”,“答案2等于x”,等等,这取决于计算器运行的次数。每次我试图设置计数器的格式来计算迭代次数时,它都不起作用,只能一遍又一遍地将它们标记为“答案1”。任何帮助都将不胜感激。我对Python非常陌生迭代计数器Python3x,python,python-3.x,loops,counter,calculator,Python,Python 3.x,Loops,Counter,Calculator,因此,我用Python构建了一个简单的计算器,用户输入两个数字和一个运算符,然后给出答案。他们还可以选择再次运行计算器。我想对答案进行编号,使每个答案都显示“答案1等于x”,“答案2等于x”,等等,这取决于计算器运行的次数。每次我试图设置计数器的格式来计算迭代次数时,它都不起作用,只能一遍又一遍地将它们标记为“答案1”。任何帮助都将不胜感激。我对Python非常陌生 answer = "y" while ((answer == "Y") or (answer == "y") or (answe
answer = "y"
while ((answer == "Y") or (answer == "y") or (answer == "Yes") or (answer == "yes")):
numones = input ("Give me a number: ")
numtwos = input ("Give me another number: ")
numone = float(numones)
numtwo = float(numtwos)
operation = input ("Give me an operation (+,-,*,/): ")
counter = 0
for y in answer:
counter += 1
if (operation == "+"):
calc = numone + numtwo
print ("Answer " + str(counter) + " is " + str(calc))
elif (operation == "-"):
calc = numone - numtwo
print ("Answer " + str(counter) + " is " + str(calc))
elif (operation == "*"):
calc = numone * numtwo
print ("Answer " + str(counter) + " is " + str(calc))
elif (operation == "/"):
calc = numone / numtwo
if (numtwo != 0):
print ("Answer " + str(counter) + " is " + str(calc))
else:
print ("You can't divide by zero.")
else:
print ("Operator not recognized.")
answer = input ("Do you want to keep going? ")
if ((answer == "Y") or (answer == "y") or (answer == "Yes") or (answer == "yes")):
print ()
else:
print ("Goodbye.")
break
删除
while
循环中的计数器=0
。并将此声明移动到while
循环上方
另外,行:
for y in answer:
counter += 1
你真的很困惑,而且肯定是错的,因为如果你的答案是“是”,你会得到+3的增长。只需增加(
counter+=1
)counter
,无需任何for
-循环。,因为在中不断分配counter=0
,而在循环中。只需注意-您可以使用在['y','y','yes','yes中回答]
而不是将答案
与每个可能的值进行比较。