【列表中的重复数据,使用for循环遍历列表时,最后只取一次。】
1 #商店里的商品列表 2 com = [ 3 ("iphone",5800), 4 ("macbook",9000), 5 ("coffee",320), 6 ("pythonbook",80), 7 ("bicyle",1500) 8 ] 9 shoplist = []#购物车变量 10 11 salary = input("请输入您的预算:")#总共有5000改为可以选多少钱 12 if salary.isdigit():#验证 13 salary = int(salary) 14 yue = salary 15 16 while yue >= 0: #形成一个无限循环 17 18 for i, v in enumerate(com, 1): # 打印商品内容 19 print(i, ‘>‘, v) 20 comd_num = input("输入商品编号(1...5)或退出(q):") #引导选择商品 21 22 if comd_num.isdigit(): #验证输入是否合法 23 comd_num = int(comd_num) 24 if comd_num > 0 and comd_num <= len(com): 25 p_com = com[comd_num-1] #将选择的商品选出来 26 if p_com[1] < yue: 27 yue -= p_com[1] # 买了要扣预算 28 shoplist.append(p_com) 29 print("购物车商品有:", shoplist) 30 print("余额还有:", yue) 31 else: 32 print("购物车商品有:", shoplist) # 用户选商品编号,调用商品价格进行判断钱够不够 33 print("您的余额不足!还有%s"%yue) 34 else: 35 print("无此商品") 36 elif comd_num == "q": 37 print("-------------您已购买如下商品--------------") 38 for i in shoplist: 39 if shoplist.count(i) >= 2: 40 print(i,"*",shoplist.count(i)) 41 else: 42 print(i) 43 print("--------------欢迎下次光临!---------------") 44 break 45 else: 46 print("非法字符")
余额 = 200 买了2本书,退出后的结果是
输入商品编号(1...5)或退出(q):q
-------------您已购买如下商品--------------
(‘pythonbook‘, 80) * 2
(‘pythonbook‘, 80) * 2
--------------欢迎下次光临!---------------
怎么处理才能变成
-------------您已购买如下商品--------------
(‘pythonbook‘, 80) * 2
--------------欢迎下次光临!---------------
原文地址:https://www.cnblogs.com/watalo/p/11495094.html
时间: 2024-09-29 23:13:06