编写一个超市购物程序python
时间: 2024-11-12 09:38:45 浏览: 23
基于Python的超市购物小票随机抽奖程序.zip
编写一个简单的Python超市购物程序,可以模拟用户选择商品、添加到购物车、查看购物车以及计算总价的过程。这里是一个基本的示例:
```python
class Product:
def __init__(self, name, price):
self.name = name
self.price = price
class ShoppingCart:
def __init__(self):
self.items = {}
def add_item(self, product_name, quantity):
if product_name in self.items:
self.items[product_name] += quantity
else:
self.items[product_name] = quantity
def remove_item(self, product_name, quantity=1):
if product_name in self.items and self.items[product_name] >= quantity:
self.items[product_name] -= quantity
if self.items[product_name] == 0:
del self.items[product_name]
def total_cost(self):
return sum(item['price'] * item['quantity'] for item in self.items.values())
# 示例商品
products = {
"苹果": Product("苹果", 5),
"香蕉": Product("香蕉", 3),
"牛奶": Product("牛奶", 10)
}
def main():
cart = ShoppingCart()
while True:
print("\n超市购物助手")
print("1. 添加商品")
print("2. 查看购物车")
print("3. 删除商品")
print("4. 结算")
print("5. 退出")
choice = input("请输入您的选择(1-5): ")
if choice == '1':
product_name = input("请输入您想购买的商品名称: ")
quantity = int(input("请输入购买数量: "))
cart.add_item(product_name, quantity)
elif choice == '2':
print("当前购物车:")
for item, quantity in cart.items.items():
print(f"{item}: {quantity} x {products[item].price}")
elif choice == '3':
product_name = input("请输入您要删除的商品名称 (按回车键结束): ")
if product_name:
cart.remove_item(product_name)
elif choice == '4':
print(f"总费用: {cart.total_cost()} 元")
elif choice == '5':
break
else:
print("无效的选择,请重新输入.")
if __name__ == "__main__":
main()
```
在这个程序中,我们首先定义了Product类表示商品,然后创建了一个ShoppingCart类作为购物车容器。主函数`main()`处理用户的交互,包括添加商品、查看购物车等操作,并计算总价。
阅读全文