- List item代码实现了一个简单的购物系统,包含了用户注册、登录、添加余额、查看余额、查看购物车、查看商品列表、购买商品、移除购物车中的商品、结账等功能。
代码分为两个类:User
和 ShoppingMarket
。
-
User
类:__init__
方法初始化用户对象,接收用户名和密码作为参数,并设置初始余额为0,购物车为空列表,购物车总价为0。display_info
方法用于显示用户信息,打印用户名和余额。modify_info
方法用于修改用户信息,通过用户输入的新用户名和密码来更新用户对象的属性。add_balance
方法用于添加余额,接收金额作为参数,并将金额累加到用户对象的余额上。view_balance
方法用于查看当前余额,打印用户对象的余额。view_cart
方法用于查看购物车,如果购物车为空,则打印提示信息;否则,逐个打印购物车中商品的名称、价格和数量。add_to_cart
方法用于将商品加入购物车,接收商品名称、价格和数量作为参数,将商品信息以列表形式添加到购物车列表中,并更新购物车总价。remove_from_cart
方法用于从购物车中移除商品,接收商品名称、价格和数量作为参数,遍历购物车列表找到对应商品,更新购物车总价和商品数量,并在数量为0时将商品从购物车列表中移除。checkout
方法用于结账,接收收货地址和手机号作为参数,检查余额是否足够支付购物车中商品的总价,如果余额足够,则从余额中扣除总价,并打印结账成功的提示信息,同时打印购买的商品手机号和收货地址;清空购物车列表和购物车总价。
-
ShoppingMarket
类:__init__
方法初始化购物市场对象,创建一个空的用户字典和一个商品字典,商品字典中包含一些示例商品及其对应的价格。register
方法用于用户注册,接收用户名和密码作为参数,检查用户名是否已存在,如果存在则打印提示信息,否则创建一个新的User
对象,并将其添加到用户字典中。login
方法用于用户登录,接收用户名和密码作为参数,检查用户名是否存在于用户字典中,如果存在则检查密码是否匹配,如果匹配则打印欢迎信息并返回相应的用户对象,否则打印密码错误的提示信息;如果用户名不存在,则打印相应的提示信息。
-
market
对象是一个ShoppingMarket
类的实例,用于实际运行购物市场系统。
代码主要部分是一个循环,用户可以根据提示选择不同的操作:
- 如果选择 “1”,则进行用户注册操作,输入用户名和密码后调用
registe