利用购物车系统可以熟练掌握,pyhon入门操作,如 while 循环 if语句,字符串方法,插入,删除数据,
购物车程序
界面:
salary = 5000欢迎下次光临
#___author Laughing #date id=[1,2,3,4,5] #初始换五个商品 shop=['car','phone','coffe','water','soccer'] #初始化商品列表 money=[500000,5800,32,3,50] #初始化商品金额 shop_choose=['nothing'] #若在没有购物的情况选择退出,我们打印nothing shopping_list=''' -----------------shopping-list--------------------- %d:%s-------------------%d %d:%s-----------------%d %d:%s-----------------%d %d:%s-----------------%d %d:%s----------------%d 0----------------------quit ---------------------------------------------------- '''% (id[0],shop[0],money[0],id[1],shop[1],money[1],id[2],shop[2],money[2],id[3],shop[3],money[3],id[4],shop[4],money[4]) print("plases input your salary : ") salary=int(input()) Balance=salary i=0 while True: print("plases input the shop of id what you want") print(shopping_list) num=int(input()) if num == 0: #判断退出 print(''' -------------------shopping cart------------------ your choose: %s Balance: %d welcome to here! -----------------------End-------------------------- '''% (shop_choose,Balance)) exit() if i == 0: del shop_choose[0] i =i+1 shop_choose.append(shop[num-1]) print(shop_choose) Balance -= money[num-1] print(''' -------------------shopping cart------------------ your choose: %s Balance: %d welcome to here! -----------------------End-------------------------- ''' % (shop_choose, Balance))
但以上代码,弊端太大,不支持滚键盘,选择内容改变太难(一个列表改变另一个也要改变)为了减少工作量,可以进行优化
讲物品和钱放在同一列表中,添加判实现滚键盘。
#___author Laughing #date shop=[('car',500000),('phone',5800),('coffe',32),('water',3),('soccer',3)] shop_choose=[] while True: print("plases input your salary : ") salary=input() if salary.isdigit(): salary=int(salary) break else: print("wrong ,plases input digit") Balance=salary while True: for i,j in enumerate(shop,1): print(i,j) print("plases input the shop of id what you want") num=input() if num.isdigit(): num=int(num) if num <= 0 or num > len(shop): print("plaese input right num") continue elif num =='q' or num == 'Q': print(shop_choose) print(Balance) print("bye ") break else: print("please input digit") continue shop_choose.append(shop[num-1][0]) Balance -= shop[num-1][1] print(shop_choose) print(Balance)