python简易购物车使用文件版
时间: 2024-02-02 21:03:23 浏览: 126
以下是一个简易购物车程序的示例,使用文件存储购物车信息:
```python
import os
def load_cart():
"""加载购物车"""
if not os.path.exists('cart.txt'):
return {}
with open('cart.txt', 'r') as f:
lines = f.readlines()
cart = {}
for line in lines:
name, price, quantity = line.strip().split(',')
cart[name] = {'price': float(price), 'quantity': int(quantity)}
return cart
def save_cart(cart):
"""保存购物车"""
with open('cart.txt', 'w') as f:
for name, info in cart.items():
price = info['price']
quantity = info['quantity']
line = f"{name},{price},{quantity}\n"
f.write(line)
def print_cart(cart):
"""打印购物车"""
print('购物车:')
for name, info in cart.items():
price = info['price']
quantity = info['quantity']
total = price * quantity
print(f"{name} x{quantity} ¥{total:.2f}")
print()
def add_to_cart(cart):
"""添加商品到购物车"""
name = input('请输入商品名称:')
if name in cart:
print('该商品已经在购物车中')
return
price = float(input('请输入商品价格:'))
quantity = int(input('请输入购买数量:'))
cart[name] = {'price': price, 'quantity': quantity}
print('已经添加到购物车')
def remove_from_cart(cart):
"""从购物车中删除商品"""
name = input('请输入要删除的商品名称:')
if name not in cart:
print('购物车中没有该商品')
return
del cart[name]
print('已经从购物车中删除')
def main():
cart = load_cart()
while True:
print_cart(cart)
print('请选择操作:')
print('1. 添加商品到购物车')
print('2. 从购物车中删除商品')
print('3. 结账')
print('4. 退出程序')
choice = input()
if choice == '1':
add_to_cart(cart)
save_cart(cart)
elif choice == '2':
remove_from_cart(cart)
save_cart(cart)
elif choice == '3':
total = 0
for name, info in cart.items():
price = info['price']
quantity = info['quantity']
total += price * quantity
print(f'总计:¥{total:.2f}')
cart.clear()
save_cart(cart)
elif choice == '4':
break
else:
print('无效的选项')
if __name__ == '__main__':
main()
```
在这个程序中,我们定义了三个函数 `load_cart`、`save_cart` 和 `print_cart`,用于加载购物车、保存购物车和打印购物车。其中,`load_cart` 函数会从文件中加载购物车信息,`save_cart` 函数会将购物车信息保存到文件中,`print_cart` 函数会打印购物车中的商品信息。
在 `main` 函数中,我们循环显示购物车信息,并提供以下操作:
1. 添加商品到购物车
2. 从购物车中删除商品
3. 结账
4. 退出程序
根据用户的选择,我们会调用 `add_to_cart`、`remove_from_cart` 和 `print_cart` 函数来实现相应的功能。其中,`add_to_cart` 函数会从用户输入中读取商品名称、价格和数量,并将商品信息添加到购物车中;`remove_from_cart` 函数会从用户输入中读取要删除的商品名称,并将该商品从购物车中删除。最后,如果用户选择了结账操作,我们会计算购物车中所有商品的总价,并将购物车清空。所有的购物车信息都会保存到文件中,以便下次使用时恢复。
阅读全文