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('错误选项!')

 

 

 

posted @ 2018-01-16 13:49  hsj_jingyu  阅读(269)  评论(0编辑  收藏  举报