迭代计数器 Python3x

Iteration counter Python3x

所以我在 Python 中构建了一个简单的计算器,用户可以在其中输入两个数字和一个运算符并给出答案。他们还可以选择再次 运行 计算器。我想给答案编号,所以每个答案都是 "Answer 1 equals x"、"Answer 2 equals x" 等,具体取决于计算器是 运行 的次数。每次我尝试格式化计数器以计算迭代次数时,它都不起作用,并且只是一遍又一遍地标记它们 "Answer 1" 。任何帮助将不胜感激。我是 Python.

的超级新手
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 循环中删除分配 counter = 0。并将此声明移至 while 循环上方。

还有行:

for y in answer:
    counter += 1

确实令人困惑,而且肯定是错误的,因为如果您得到 'yes' 作为答案,您将获得 +3 增长。只是 increment(counter += 1) counter 没有任何 for-loop.