pyton写购物车
pyton写购物车
基本要求:
用户输入工资,然后打印购物菜单
用户可以不断的购买商品,直到余额不够为止
退出时打印用户已购买的商品和剩余金额。。
1.这个程序功能不完整,bug很多,练手之作。
1 goods = ['Iphone: 5000','mac Pro: 12000','alex python: 81','Bike: 800','Starback latte: 31']
2 salary = input('请输入您的工资:')
3 print('------- 商品列表如下输入序号即可加入购物车 -------')
4 print('温馨提示:输入序号8即可退出程序!')
5 for i in goods:
6 print(goods.index(i)+1,'. '+i)
7
8 shopping_car = []
9 while True:
10 shopping_num = int(input('请输入要购买的商品序号:'))
11 if shopping_num == 1:
12 shopping_car.append(goods[shopping_num-1])
13 continue
14 elif shopping_num == 2:
15 shopping_car.append(goods[shopping_num-1])
16 continue
17 elif shopping_num == 3:
18 shopping_car.append(goods[shopping_num - 1])
19 continue
20 elif shopping_num == 4:
21 shopping_car.append(goods[shopping_num - 1])
22 continue
23 elif shopping_num == 5:
24 shopping_car.append(goods[shopping_num - 1])
25 continue
26 elif shopping_num == 8:
27 break
28 else:
29 print('没有该商品请重新输入商品序号:')
30 continue
31
32 print('您所购买的商品如下:')
33 for i in shopping_car:
34 print(shopping_car.index(i),'.'+i)
2.这个程序参照alex的pyhon讲解所写,功能比较完善,但是还有很多地方可以改善,比如可以用函数等知识来优化此程序。
1 goods = [('Iphone',50000),('mac Pro',12000),('alex python',81),('Bike',800),('Starback latte',31)]
2 print('------- 商品列表如下输入序号即可加入购物车 -------')
3 print('温馨提示:输入q即可退出程序!')
4 salary = input('请输入您的工资:')
5 shopping_list = []
6 if salary.isdigit(): #判断工资输入是否是数字
7 salary = int(salary)
8 while True:
9 for index,item in enumerate(goods): #for循环打印商品列表
10 print('%s.%s'% (index,item))
11
12 user_choice = input('请输入需要购买的商品序号:')
13 if user_choice.isdigit(): #判断序号选择是否是数字
14 user_choice = int(user_choice)
15 if user_choice < len(goods) and user_choice >= 0: #选择的范围不能超出
16 p_item = goods[user_choice] #提取商品
17 if p_item[1] <= salary: #判断工资是否购买商品
18 shopping_list.append(goods[user_choice]) #已购商品存入列表
19 salary = salary - p_item[1] #计算余额
20 print("%s已经添加到购物车中,您的余额还剩%s元!"% (p_item,salary))
21 else:
22 print('您的余额还剩%s不够了!'% salary)
23 else:
24 print('错误选项!商品不存在,请重新选择!')
25 elif user_choice == 'q'and 'Q': #离开程序
26 print('------购物车东西如下---------')
27 for i in shopping_list: #打印已购买的商品
28 print(i)
29 print('您的余额还剩%s...' % salary) #打印余额
30 break
31 else:
32 print('错误选项!')