撞钟和尚cokeor

程序:购物车程序

程序:购物车程序

需求:

  1. 启动程序后,让用户输入工资,然后打印商品列表
  2. 允许用户根据商品编号购买商品
  3. 用户选择商品后,检测余额是否够,够就直接扣款,不够就提醒
  4. 可随时退出,退出时,打印已购买商品和余额
salary=[['Iphone',5800],
       ['Mac Pro',12000],
       ['Starbuck Latte',31],
       ['Alex Python',81],
       ['Bike',800]]
def show():
    global salary,bought,money
    print('\n\n————商品列表——————')
    for i in range(len(salary)):
        print(str(i+1)+'. \t',salary[i])
    print('————您的余额——————')
    print('余额',money)
    print('————您购买的商品————')
    print(bought)
index_=len(salary)
quit='not'
bought=[]
money=input('您充值的金额为:')
if money.isdigit():
    money=int(money)
    while True:
        show()
        buynum=input('你想买哪个商品?(输入数字)(q退出):')
        
        if buynum=='q':
            break
        elif buynum.isdigit():
            buynum=int(buynum)

            if buynum<index_+2 and buynum>=0 :

                if money-salary[buynum-1][1]>0:
                    money=money-salary[buynum-1][1]
                    bought.append(salary[buynum-1][0])
                else:
                    print('余额不足,请充值!')
            else:
                print('\033[31;1m输入的商品不存在!\033[0m')
        else:
            print('输入无效!')
        checkpoint=input()
    print('\n\n————您的余额——————')
    print('余额',money)
    print('————您购买的商品————')
    print(bought)
else:
    print('输入错误!')

 

没什么难点,重要的还是要注意子函数中global的声明,以及while循环的退出接口,还有一个字符串输出时的格式转化。\033[31;1m   ____________\033[0m

posted on 2018-03-07 10:59  撞钟和尚cokeor  阅读(180)  评论(0编辑  收藏  举报