#coding=utf-8
#Author:XIAOJU
'''
程序:购物车程序
需求:
启动程序后,让用户输入工资,然后打印商品列表
允许用户根据商品编号购买商品
用户选择商品后,检测余额是否够,够就直接扣款,不够就提醒
可随时退出,退出时,打印已购买商品和余额
'''
import json
class Shopping:
def product_list(self):
productlist=[('伊利酸奶',7),('TF口红',256),('日本老虎吸管杯',550),('娇韵诗双萃精华',650),('奥利奥饼干',15),('儿童平衡车',1500)]
for index,x in enumerate(productlist):
print index,json.dumps(x,encoding='utf-8',ensure_ascii=False)
return productlist
def shooping(self):
freebalance=raw_input('请输入账户余额:\n')
shopping_list=[]
if freebalance.isdigit(): #判断输入的账户余额是否为数字
freebalance=int(freebalance)
product_list=Shopping().product_list()
while True:
goodsNum=raw_input('请输入商品编号:\n')
#判断输入的商品编号是否为数字
if goodsNum.isdigit(): # isdigit() 方法检测字符串是否只由数字组成,是数字,返回True,否则返回False
goodsNum=int(goodsNum)
#判断商编编号是否超出范围
if goodsNum <len(product_list) and goodsNum>=0:
subproduct=product_list[goodsNum]
#判断账户余额
if subproduct[1]<=freebalance:
shopping_list.append(subproduct)
freebalance=freebalance-subproduct[1]
else:
print '账户余额不足,账户余额为:%s'%freebalance
else:
print '商品编号对应的商品不存在'
elif goodsNum=='q' or goodsNum=='Q':
print '---------购物清单----------'
for i in shopping_list:
print json.dumps(i,encoding='utf-8',ensure_ascii=False)
print '可用余额为:%s'%freebalance
break
else:
print '无效的商品编号'
else:
print '无效的账户余额,请输入数字'
if __name__=='__main__':
Shopping().shooping()
python作业二:购物车小程序
最新推荐文章于 2022-12-28 09:14:55 发布