作业需求:
用户入口:
1.商品信息存在文件里
2.已购商品,余额记录。第一次启动程序时需要记录工资,第二次启动程序时谈出上次余额
3.允许用户根据商品编号购买商品
4.用户选择商品后,检测是否够,够就直接扣款,不够就提醒
5.可随时退出,退出时,打印移购买商品和余额
商家入口:
1.可以添加商品,修改商品价格1. 运行程序输出第一级菜单
1)编写思路
编写思路参考下面GitHub链接中的流程图
2)具体实现
买家入口
#-*- Coding:utf-8 -*- # Author: D.Gray ''' 购物车需求 用户入口: 1.商品信息存在文件里 2.已购商品,余额记录。第一次启动程序时需要记录工资,第二次启动程序时谈出上次余额 3.允许用户根据商品编号购买商品 4.用户选择商品后,检测是否够,够就直接扣款,不够就提醒 5.可随时退出,退出时,打印移购买商品和余额 商家入口: 1.可以添加商品,修改商品价格 ''' import os,sys def user_shoping(): #定义一个用户购买商品操作函数 while True: user_salary = input('请输入您的充值金额>>>:') if user_salary.isdigit(): #判断充值金额是否为数字 user_salary = int(user_salary) user_shop_file.write(login_name + ' ') user_shop_file.write(str(user_salary) + ' ') for item in porduct_lists: #循环遍历商品列表 print(porduct_lists.index(item), item) #使用index方法打印列表序号,item为列表元素 p_index = porduct_lists.index(item) #定义p_index方法存储列表序号 while True: user_choises = input('请选择您所需购买的商品编号>>>:退出请按:Q:') if user_choises.isdigit(): #判断用户输入的商品编号是否为数字 user_choises = int(user_choises) if user_choises <= p_index and user_choises >= 0: #用户输入编号小于列表序号 p_item = porduct_lists[user_choises] #定义p_item方法获取用户选择的商品 p_item[1] = int(p_item[1]) #将商品金额强制转换为int类型 if user_salary >= p_item[1]: #判断用户金额是否买得起商品 shop_lists.append(p_item) #将已购买的商品信息存储到shop_lists列表中 user_salary -= p_item[1] #扣除商品金额=还剩余额 user_shop_file.write(login_name + ' ') user_shop_file.write(str(user_salary) + ' ') #将用户信息和余额信息写入user_shop文本中 print("商品 33[32;1m%s 33[0m 已加入购物车...您还剩 33[32;1m%s 33[0m余额" % (p_item[0], user_salary)) else: print('