• python购物车


    # 购物
    
    produce = [
        {'name': 'apple', 'price': '20'},
        {'name': 'mi', 'price': '30'},
        {'name': 'mac', 'price': '15'}
    ]
    shopping_car = {}
    exit_flag = False
    print("----------商品列表----------")
    money = int(input("看我看看你的钱:").strip())
    # if money.isdigit():
    #     money = int(money)
    # else:
    #     print("请重让我看看你的钱!!")
    #     money = input("看我看看你的钱").strip()
    while not exit_flag:
        for index, i in enumerate(produce):
            print('序号{},	商品:{},	价格:{}'.format(index, i['name'], i['price']))
        choice = input("请选择你要购买产品的序号:")
        if choice.isdigit():
            choice = int(choice)
            if 0 <= choice < len(produce):   # 这里不推荐这么写,为了pycharm不出警告
                num = input("你要购买商品的数量:")
                money = money - int(produce[choice]['price'])*int(num)
                if money >= 0:
                    # shopping_car.append(produce[choice]['name'])
                    # shopping_car[produce[choice]['name']] = num
                  if produce[choice]['name'] in shopping_car:
              shopping_car[produce[choice]['name']] += int(num)
              else:
              shopping_car[produce[choice]['name']] = int(num)
    # print("你购买的商品数量为%d" % len(shopping_car)) for k, v in shopping_car.items(): print('购买商品:{},	数量:{}'.format(k, v)) print('余额%d' % money) else: print("穷鬼,回家拿钱去吧!!") break elif choice.upper() == 'Q': for k, v in shopping_car.items(): print('购买商品:{},	数量:{}'.format(k, v)) print('余额%d' % money) exit_flag = True else: print("请选择产品的序号!!")

    还可以优化通过while判断money、num

    # 购物改进
    
    produce = [
        {'name': 'apple', 'price': '20'},
        {'name': 'mi', 'price': '30'},
        {'name': 'mac', 'price': '15'}
    ]
    shopping_car = {}
    exit_flag = False
    print("----------商品列表----------")
    while not exit_flag:
        money = input("看我看看你的钱:").strip()
        if money.isdigit():     # 对用户输入的money进行出来
            money = int(money)
            break   # 结束当前循环
        else:
            print("请重让我看看你的钱!!")
            # money = input("看我看看你的钱").strip()
    while not exit_flag:
        for index, i in enumerate(produce):
            print('序号{},	商品:{},	价格:{}'.format(index, i['name'], i['price']))
        choice = input("请选择你要购买产品的序号:")
        if choice.isdigit():
            choice = int(choice)
            if 0 <= choice < len(produce):   # 这里不推荐这么写,为了pycharm不出警告
                while not exit_flag:
                    num = input("你要购买商品的数量:").strip()
                    if num.isdigit():       # 对用户输入的num进行处理
                        break
                    else:
                        print("请重新输入购买数量,靓仔!!!")
                money = money - int(produce[choice]['price'])*int(num)
                if money >= 0:
                    # shopping_car.append(produce[choice]['name'])
                    shopping_car[produce[choice]['name']] = num
                    # print("你购买的商品数量为%d" % len(shopping_car))
                    for k, v in shopping_car.items():
                        print('购买商品:{},	数量:{}'.format(k, v))
                    print('余额%d' % money)
    
                else:
                    print("穷鬼,回家拿钱去吧!!")
                    break
        elif choice.upper() == 'Q':
            for k, v in shopping_car.items():
                print('购买商品:{},	数量:{}'.format(k, v))
            print('余额%d' % money)
            exit_flag = True
        else:
            print("请选择产品的序号!!")
  • 相关阅读:
    19.音乐查询l练习
    python用requests爬取新浪财经首页要闻
    关于Pyhton正则报错: sre_constants.error: nothing to repeat at position
    python中的字典
    Python flask jQuery ajax 上传文件
    python中与时间有关的对象-datetime、time、date
    python os模块之实现多层目录文件查找
    python 字符串格式化输出 %d,%s及 format函数, 数字百分化输出
    linux unbuntu 虚拟环境 安装沙盒virtualenv 、virtualenvwrapper
    python实现二分查找
  • 原文地址:https://www.cnblogs.com/wt7018/p/10802700.html
Copyright © 2020-2023  润新知