python简单商城购物车实例代码

yipeiwu_com5年前Python基础

本文为大家分享一个简单商城购物车的python代码,供大家参考,具体内容如下

要求:

1、写一段商城程购物车序的代码
2、用列表把商城的商品清单存储下来,存到列表 shopping_mail
3、购物车的列表为shopping_cart
4、用户首先输入工资金额,判断输入为数字
5、用户从商城购物清单中选择购买物品,每次购买成功就用工资减去物品单价
6、判断用户金额是否足够,不足够提示用户
7、如果用户不想再继续购物,则按Q键退出菜单
8、用户退出之后,将用户购买的清单打印出来。
9、尽量学习带颜色输出几个重点信息字符。

代码

 # Author:show530

shopping_mail = [
  ('Iphone',5800),
  ('Mac Pro',9800),
  ('Bike',800),
  ('Watch',10600),
  ('Coffee',31),
  ('Alex Python',120),
]
shopping_cart = []

salary=input("请输入您的工资金额:")
if salary.isdigit():
  salary=int(salary)
  while True:
    for index,item in enumerate(shopping_mail):
      print(index,item)
    enter_number=input("请输入您要购买的商品编号:")
    if enter_number.isdigit():
      enter_number=int(enter_number)
      if enter_number>-1 and enter_number<len(shopping_mail):
        p_item=shopping_mail[enter_number]
        if p_item[1]<=salary:
          shopping_cart.append(p_item)
          salary-=p_item[1]
          print("您选购的商品金额是:\033[31m%s\033[0m,您的工资余额为:\033[31m%s\033[0m" % (p_item, salary))
        else:
          print("您的余额不足,无法继续购买!")
      else:
         print("您输入的商品编号不存在:")
    elif enter_number=="q":
      print("\033[0;32;40m------您本次购物清单为-------\033[0m")
      for p in shopping_cart:
        print(p)
      print("您的余额为:\033[31m%s\033[0m"%(salary))
      exit()
    else:
        print("\033[31m输入有误,必须输入数字或者正整数!\033[0m")

这个程序花了我较多时间,差不多一个晚上都在反复思考这个。

1、salary.isdigit()还不是太熟悉,这个方法的作用是检查用户输入的是否为数字,不过不知道为什么,输入浮点数也会报错。负数貌似也会报错。这里先囫囵吞枣一下。

2、对于多层嵌套循环还不熟悉,开始一直输出出现问题,主要原因就是嵌套格式不对。以后写程序之前要注意画一下流程图。

3、学习了颜色输出的用法。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python使用arp欺骗伪造网关的方法

本文实例讲述了python使用arp欺骗伪造网关的方法。分享给大家供大家参考。具体实现方法如下: #coding:utf-8 ''' arp欺骗局域网pc,将伪造的网关mac以网关的...

Python自动化之数据驱动让你的脚本简洁10倍【推荐】

Python自动化之数据驱动让你的脚本简洁10倍【推荐】

前言 数据驱动是一种思想,让数据和代码进行分离,比如爬虫时,我们需要分页爬取数据时,我们往往把页数 page 参数化,放在 for 循环 range 中,假如没有 range 这个自带...

速记Python布尔值

在python中。布尔值有 Ture False 两种。Ture等于对,False等于错。要注意在python中对字母的大小写要求非常严格。 Ture 和 False 的首字母都要大写。...

Python高级特性与几种函数的讲解

切片 从list或tuple中取部分元素。 list = [1, 2, 3, 4] list[0 : 3] # [1, 2, 3] list[-2 : -1] # -1表示最后一个,...

浅谈Python中的zip()与*zip()函数详解

前言 1.实验环境: Python 3.6; 2.示例代码地址:下载示例; 3.本文中元素是指列表、元组、字典等集合类数据类型中的下一级项目(可能是单个元素或嵌套列表)。 zi...