使用列表函数写一个“购物车”小程序:
#!/user/bin env python # author:Simple-Sir # 20180908 ''' 需求: 1、启动程序后,让用户输入工资,然后打印商品列表 2、允许用户根据商品编号购买商品 3、用户选着商品后,检测余额是否够,够就直接扣款,不够就提醒 4、可随时退出,退出时,打印已购买商品和余额 ''' #定义商品 shangping = [ ['1','苹果','10'], ['2','香蕉','20'], ['3','芒果','30'], ['4','西瓜','40'], ['5','葡萄','50'], ['6','榴莲','60'] ] shangping_total = int(shangping[-1][0]) #取最后一个商品的编号 input_money = int(input('请输入您的预算:')) #预算金额 balance = input_money #余额 shangping_kx=[] #可选商品 yx_sp = [] #已选购商品 yx_sp_money = 0 #已选购商品总价 while balance >= int(shangping[0][2]): for i in range(0,shangping_total): if balance >= int(shangping[i][2]): shangping_kx.append(shangping[i]) else: continue print('您可选购以下商品:') for j in shangping_kx: print(j) sp_no = input('请输入您想选购的商品编码:') yx_sp.append(shangping_kx[int(sp_no)-1]) dq_xg_money = 0 dq_xg_money = shangping_kx[int(sp_no)-1][2] yx_sp_money = int(yx_sp_money) + int(dq_xg_money) print('您已选购以下商品:') for k in yx_sp: print(k) print('您当前已选购商品总价为:',yx_sp_money,'元') balance = balance - int(dq_xg_money) print('你当前余额为:',balance,'元') shangping_kx.clear() if balance > 0 : is_continue = input('您是否还要继续选购商品?(Y/N)') if str.upper(is_continue) != 'Y': print('欢迎您下次光临!') exit() else: print('您当前余额已不足,请充值后再选购!')