我的目标是通过移除特定商品的数量来修改购物车中商品的数量。我正在使用while循环来执行此操作,但是我的while循环似乎并未结束。
我希望它结束,以便代码返回到选择选项(1.添加一个项目2.修改3.删除项目4.查看购物篮)
关于如何有效实现这一目标的任何想法?
非常感谢您的帮助。
谢谢。
elif option == 2:
item2 = input("Select the item you would like to amend: Parcel or Letter: ")
item2_updated = item2.capitalize()
while item2_updated != None:
if item2_updated in shopping_basket:
print ("Current item quantity: ")
print(item2_updated,":",shopping_basket[item2_updated])
quantity = int(input("Enter the quantity to remove: "))
shopping_basket[item2_updated] = shopping_basket[item2_updated] - quantity
print(item2_updated,":",shopping_basket[item2_updated])
elif item2_updated != None:
print("Item not in the cart")
else:
print("Item not in the cart")
elif option == 3:
item = input("Enter an item: ")
del(shopping_basket[updated_item])
答案 0 :(得分:0)
首先,您不需要
elif item2_updated != None:
print("Item not in the cart")
并避免使用while... else
令人困惑。
第二,在您的while
循环中,您没有更改item2_updated
的值,因此item2_updated
将永远不会是None
。始终是用户最初发送到input()
的值。
您要执行的操作是将while
循环放在最顶部,然后使用if...elif...else
进行更新和更改。像这样:
while True:
if option == 1:
# do something
elif option == 2:
if item2_updated in shopping_basket:
# do something (No while loop here)
else:
# do something else
您还可以使用一个特殊的选项来“退出”,这将break
退出while
循环