跟着Alex老师学习抄了一遍shopping_list的购物程序

这段小程序基本上涵盖了,老师最近讲解的while循环,if,else,逻辑判断。还有重要的一点就是列表。并且在列表里面取下标。

取下标的方法,老师讲了两种。1、print (product_list.index(item),item)   #这样可以显示下标,最基本的方法

              2、利用enumerate来枚举列表中下标,具体表示方法如下。for index, item in enumerate (product_list):

                                                                                                          print (index,item)

利用取下标的方法,可以很容易取到列表里产品的序号。

另外就是字体去颜色,这个是需要死记的。

\033[32;1m %s \033[0m
具体参照上面这个。
附代码。
__author__ = "david.z"

product_list = [
    ('苹果手机',5800),
    ('苹果电脑',9800),
    ('自行车',800),
    ('高档手表',10600),
    ('辛巴克咖啡',31),
    ('Python书籍',120),
]
shopping_list = []
salary = input("输入你的工资:")
while True:

    if salary.isdigit():
        salary = int(salary)
        while True:
            for index, item in enumerate(product_list):
                #print(product_list.index(item),item)
                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("你所购买的商品为 \033[32;1m%s\033[0m,你的余额还剩 \033[31;1m%s\033[0m"%(p_item,salary))
                    else:
                        print ("\033[41;1m您的余额仅剩%s,请尽快充值!!\033[0m"%salary)
                else:
                    print("您选择的[%s]不存在!!!"%user_choice)
            elif user_choice == 'q'or user_choice == 'Q':
                print("---------shopping_list-----------")
                for p in shopping_list:
                    print(p)
                print("您的余额为:",salary)
                exit()
            else:
                print("您的输入有误")
    else:
        print("您的输入有误,请重新输入!!")
    break

 

转载于:https://www.cnblogs.com/davidz/p/8306058.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值