要求:
用户入口
1、商品信息存在文件里
2、已购商品,余额记录。
商家入口
可以添加商品,修改商品价格
Code:
商家入口:
# Author:P J Jimport osps = '''1 >>>>>> 修改商品2 >>>>>> 添加商品按q为退出程序'''# 打开两个文件,f文件为原来存取商品文件,f_new文件为修改后的商品文件f = open('commodit', 'r', encoding='utf-8')f_new = open('commodit_update', 'w+', encoding='utf-8')file_list = f.readlines()# 打印商品信息while True: productslist = [] # 从商品文件中读取出来的数据存放到productslist列表里 for line in file_list: productname = line.strip().split() productname, oldprice = line.strip("/n").split() productslist.append([productname, int(oldprice)]) choose = input("%s请选择:" %ps) if choose =='1': for index, item in enumerate(productslist): print(index, item) productindex = input("请输入要修改价格的商品序号:") if productindex.isdigit(): productindex = int(productindex) while True: print('要修改商品信息:', productslist[productindex]) price = input("请输入要修改的价格:") if price.isdigit(): price = int(price) productslist[productindex][1]=price break else: print("请正确的输入价格!") continue #已经修改好的商品列表循环写入f_new文件夹 for products in productslist: insert_data = "%s %s" %(products[0],products[1]) f_new.write(insert_data+'/n') print("商品价格已经修改!") # 替换原来的文件 f_new = open('commodit_update', 'r', encoding='utf-8') data = f_new.readlines() f = open('commodit', 'w+', encoding='utf-8') for line in data: f.write(line) f.close() f_new.close() #删除替换文件 os.remove('commodit_update') elif choose =='2': # 添加商品 f = open('commodit', 'a+', encoding='utf-8') pricename = input("请输入商品名:") while True: price = input("请输入商品价格:") if price.isdigit(): f.writelines('%s %s/n' % (pricename, price)) break else: print('输入错误请重新输入!') continue f.close() continue elif choose =='q': break else: print("输入错误请重新输入") continue
买家入口:
# Author:P J Jproductslist = []f = open('commodit','r',encoding='utf-8')for line in f: productname,price = line.strip('/n').split() productslist.append((productname,int(price)))print(productslist)shopping_list = []salary = input("请输入你的现金:")if salary.isdigit(): salary = int(salary) while True: # for item in productslist: # print(productslist.index(item),item) for index,item in enumerate(productslist): print(index,item) #判断用户要输入 user_choice = input("请选择要买什啥>>>:") if user_choice.isdigit(): user_choice = int(user_choice) if user_choice < len(productslist) and user_choice >= 0: p_item = productslist[user_choice] if p_item[1] <= salary: #买得起 shopping_list.append(p_item) salary -=p_item[1] print("加入 %s 购物车你的余额是/033[31;1m%s/033[0mRMB" %(p_item,salary)) else: print("/033[32;1m 你的余额只剩[%s]RMB啦,还买个毛线/033[0m " %salary) else: print("/033[41;1m您输入的商品不存在,请重新输入!/033[0m") elif user_choice == 'q': print("----shopping_list----") for p in shopping_list: print(p) print("你的余额:/033[31;1m%s/033[0mRMB" %salary) #简单的余额记录 f = open('salary','w+',encoding='utf-8') f.writelines(str(salary)) f.close exit() else: print("错误选项")
新闻热点
疑难解答