一旦价格的条件满足“0”,循环就可以正常运行,但是当循环要求额外的物品价格和数量时,循环不会累计总数。我不知道为了不断累计物品的数量和它们的价格,我遗漏了什么。
我试过重新排列代码,主要是因为我认为有些语法乱了序,但我想我只是缺少了一些东西来将while循环的累积联系在一起。
priceItems = float(input("\nEnter item price: "))
numItems = int(input("How many of item: "))
subtotal = priceItems * numItems
tax= subtotal * 0.0825
total= subtotal + tax
while priceItems != 0:
priceItems = float(input("Enter item price: "))
if priceItems == 0:
print("\nSubtotal: " + "$" + str(subtotal))
print("Tax: " + "$" + str(round(tax, 2)))
print("Total " + "$" + str(round(total, 2)))
else:
numItems = int(input("How many of item: "))
1条答案
按热度按时间qpgpyjmq1#
这是因为你没有重新分配
total
变量。你只是打印第一次迭代计算,而不是在每次输入后重新存储它,就像这样:我不同意这个脚本的正确工作流程,因为我不知道用例,但这就是问题所在。重构正确的位置,在那里重做赋值,你就完成了!当然,如果它不能满足你的问题。