Python 计算器不加法。为什么?

Python calculator not adding numbers. WHY?

我在 python 中制作了这个计算器,它应该添加我给它的任何值并将结果存储在一个变量中。然后,如果我输入的不是数字,它应该打印结果……它不会给出任何错误,但会将结果打印为 0。为什么即使我清楚地添加了数字,也没有添加它们。

while True:
    inpt = input("> ")
    calc = 0
    if inpt == "1":
        calc += 1
    elif inpt == "2":
        calc += 2
    elif inpt == "3":
        calc += 3
    elif inpt == "4":
        calc += 4
    elif inpt == "5":
        calc += 5
    elif inpt == "6":
        calc += 6
    elif inpt == "7":
        calc += 7
    elif inpt == "8":
        calc += 8
    elif inpt == "9":
        calc += 9
    else:
        break

print(calc)

在每个 运行 处,您将 0 重新分配给 calc,因此您重置之前的 运行,将其放在外面

calc = 0
while True:
    inpt = input("> ")
    # ...

您也可以将字符串转换为 int 以避免这样 if/else,如果它是数字

calc = 0
while True:
    inpt = input("> ")
    if inpt not in "123456789":
        break
    calc += int(inpt)