# 输入工资,购买商品,如果余额不足,则提示
# 选择某件商品后,自动计算显示剩余金额
# 输入q,退出购买,显示购买列表
#定义商品列表
product_list = [('iphone', 5800), ('Mac', 9800), ('bike', 800), ('watch', 15800), ('python', 120), ('coffee', 30)]
shopping_list = []
salary = input("Input your salary:")
#P判断是否输入的工资为整数
if salary.isdigit():
salary = int(salary)
while True:
# 遍历列表的item,并加上序号
for index, item in enumerate(product_list):
print(index, item)
user_choice = input("选择要买的商品:")
#判断用户选择的商品序号是否为整数
if user_choice.isdigit():
user_choice = int(user_choice)
#判断输入的序号是否为有效序号
if user_choice < len(product_list) and user_choice >= 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 balanced is \033[31;1m%d\033[0m" % (p_item, salary))
else:
print("你的余额不足")
#输入的商品序号不存在时
else:
print("商品不存在")
#输入q则退出,并输出已选择的商品列表
elif user_choice == 'q':
print("----shopping list-----")
for p in shopping_list:
print(p)
print("当前余额:", salary)
exit()
else:
print("无效输入")
#如果输入的工资不为数字
else:
print("请输入数字")