zoukankan      html  css  js  c++  java
  • Python学习第二天-编写购物车

    需求:1.启动程序后,让用户输入工资,然后打印商品列表

            2.允许用户根据商品编号购买商品

            3.用户选择商品后,检测余额是否够,够就直接扣款,不够就提醒 

            4.可随时退出,退出时,打印已购买商品和余额

    # Author: zfh
    #-*-coding:utf-8-*-
    product_list = [
        ('Oracle book',100),
        ('pencil', 10),
        ('rule',100),
        ('iphone',2000),
        ('box',200)
    ]
    shopping_list = []
    shopping_cost = 0
    shopping_num = 0
    i = 0
    while i < 3 :
        salary = input("Input your salary:")
        if salary.isdigit():
            salary = int(salary)
            while True:
                for index,item in enumerate(product_list):
                    print(index,item)
                user_choice = input("Please choice >>>:")
                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]
                            shopping_cost += p_item[1]
                            shopping_num += 1
                            print("Added %s into shopping cart,your current balance is 33[31;1m %s 33[0m" %(p_item,salary))
                        else:
                            print("33[41;1m你的余额只剩[%s]" % salary)
                    else:
                        print("商品不存在,请重新选择!".center(50,'-'))
                elif user_choice == 'q':
                    print("shopping_list".center(50,'-'))
                    for p in shopping_list:
                        print(p)
                    print("共花费 %s 元," % shopping_cost,"共购买件 %s 商品" % shopping_num)
                    print("Your current balance:",salary)
                    exit()
                else:
                    print("invalid option".center(50,'-'))
        else:
            print("输入错误,请重新输入金额".center(50,'-'))
            i += 1
  • 相关阅读:
    前辈的经验
    ES6 的新特性
    jQuery 事件对象的属性和方法
    ECMAScript 6 入门
    浏览器的加载与页面性能优化
    ajax 基于 jquery 简单的 ajax 请求
    浏览器加载、解析、渲染的过程
    浏览器的加载和解析的过程,以及如何加快 HTML 的加载速度
    【经典问题】当你输入一个网址的时候,实际会发生什么?
    总结 IE 下的一些 BUG
  • 原文地址:https://www.cnblogs.com/fameg/p/9652190.html
Copyright © 2011-2022 走看看