product_list=[#建列表
('Iphone',5800),
('MacPro',9800),
('Bike',800),
('Watch',10600),
('Coffee',31),
('Alex python',120),
]
shopping_list=[]#购物车列表为空
salary=input("Input your salary:")#输入工资(工资只输入一次,所以放在循环外。且因输入默认为字符串不能强转,否则报错)
if salary.isdigit():#判断所输入的salary是否是数字,返回1/2
salary=int(salary)#若为真则强转为int型
while True:
# for item in product_list:#循环打印商品列表
for index,item in enumerate(product_list):#循环打印商品列表及下标,并取出下标
'''>>>a=[1,2,3]
>>>for i in enumerate(a):
>>>print(i)
(0,1)
(1,2)
(3,3)
'''
print(index,item)#打印商品列表
user_choice=input("选择要买:")#用户选择输入的商品
if user_choice.isdigit():#如果输入的是(字符型的)数字
user_choice=int(user_choice)#转int
if user_choice<len(product_list)and user_choice>=0:#所输入的数字是否<列表长and >=0
p_item=product_list[user_choice]#通过下标获取商品价格
if p_item[1]<=salary:#判断价格是否<=工资
shopping_list.append(p_item)#若买得起就(添加)存入购物车列表
salary-=p_item[1]#工资-商品
print("Added %s into shopping cart ,your current banlance is \033[31;1m %s\033[0m" %(p_item, salary))
else:
print("\033[41;1m你的余额为[%s]\033[0m" %salary)#若买不起则打印...
else:
print("product code[%s]is not exits!" %user_choice)#若所输入不标准则打印商品不存在
elif user_choice=="q":#若输入的是q,则打印所买物品,退出
print("-------shopping list------")#打印以输出的
for p in shopping_list:
print(p)
print("you current balamce:",salary)#打印所剩余额
exit()#退出
else: #若不是q
print("invalid optin")#打印错误选项
购物车(list)
最新推荐文章于 2023-06-25 17:06:25 发布