zoukankan      html  css  js  c++  java
  • 购物车程序

    作业需求:

    数据结构:
    goods = [
    {"name": "电脑", "price": 1999},
    {"name": "鼠标", "price": 10},
    {"name": "游艇", "price": 20},
    {"name": "美女", "price": 998},
    ......
    ]
    
    功能要求:
    基础要求:
    
    1、启动程序后,输入用户名密码后,让用户输入工资,然后打印商品列表
    
    2、允许用户根据商品编号购买商品
    
    3、用户选择商品后,检测余额是否够,够就直接扣款,不够就提醒
    
    4、可随时退出,退出时,打印已购买商品和余额
    
    5、在用户使用过程中, 关键输出,如余额,商品已加入购物车等消息,需高亮显示
    
    
    扩展需求:
    
    1、用户下一次登录后,输入用户名密码,直接回到上次的状态,即上次消费的余额什么的还是那些,再次登录可继续购买
    
    2、允许查询之前的消费记录


    # 系统储存的用户名密码信息:
    user_info = {'andyzhang':'123','hanmei':'321','yaoyao':'023'}

     goods = [{'name': '平板电脑', 'price': 2109}, {'name': '耳机', 'price': 25}, {'name': '游艇', 'price': 2000}, {'name': '美女', 'price': 998}]

    exit_flag = false #设立标识符
    while not exit_flag: #循环,用户名密码错误之后能让用户再次输入
      name_input = input('请输入用户名:')
      password_input=input('请输入密码:')

    #判断用户名、密码是否正确
    #用户名、密码正确则登录

      if password_input == user_info.get(name_input)

        print('登录成功')

        salary_input = int(input('请输入您的工资:'))

        #输入工资后打印商品列表

        print('--------商品列表--------')

        for k, i in enumerate(goods):

          print('%s. %s  price:%s' % (k,i[name],i[price]))

        #定义一个购物车为空列表

        cart = []

        #用户输入有2种情况:

        #1、用户输入数字:如果输入的数字是商品编码,则把相应的商品添加到购物车;

        #如果输入的数字不是商品编码,则提示“商品编码错误”信息;

        #2、输入字母“q”则退出

        while not exit_flag:   #循环,让用户可以持续添加商品编码

          product_choice = input(请输入您要购买的商品编号:)

          #第一种情况:用户输入的是数字

          if product_choice.isdigit():

            choice = int(product_choice)

          #输入数字在商品编码范围之内

            if choice>=0 and choice <len(goods):

        #输入正确的商品编码后,去判断工资是否足够买这个商品,

        #余额足够就把所选的商品添加到购物车cart 列表中,并从余额中扣除相应的价格,打印“商品已添加到购物车”和所剩余额信息。

              if salary_input >= goods[choice]['price']

                cart.append[goods[choice]]

                print('商品: %s 已被添加到购物车' % (goods[choice]['name']))

                salary_input -= goods[choice]['price']

                print('现在的余额是:'salary_input)

                #余额不足

                else:

                  print("余额不足!")

            else:

              print('商品不存在!')

          #用户输入的是字母'q'

          elif product_choice == 'q'

            exit_flag = True

            if len(cart) > 0

              print(--------您已购买的商品清单--------)

              for index,i enumerate(cart)

                print('%s  %s  price:s%' % (index,i['name'],i["price"]))

                print('您的余额还剩:',salary_input)  #打印余额信息

            #用户名、密码错误,‘打印用户名密码错误’

      else:

        print(“用户名密码错误,请重新输入:”)

             

        

      

  • 相关阅读:
    Centos或Windows中部署Zookeeper集群及其简单用法
    Linux中使用sendmail发送邮件,指定任意邮件发送人
    使用log4net将C#日志发送到Elasticsearch
    在Centos6或者7上安装Kafka最新版
    最简单的配置Centos中JAVA的环境变量的方法
    JAVA通过oshi获取系统和硬件信息
    JAVA代码中获取JVM信息
    使用JavaCV播放视频、摄像头、人脸识别
    JAVA中通过JavaCV实现跨平台视频/图像处理-调用摄像头
    Linux中使用Vim快速更换文档中Windows换行符为Linux平台
  • 原文地址:https://www.cnblogs.com/anzhangjun/p/8329168.html
Copyright © 2011-2022 走看看