#需求

  • 开发一个购物车程序

  • 要求用户输入工资,然后打印购物车菜单

  • 用户可以不断的购买商品,直到钱不够为止

  • 在菜单中用户可以先择打印自已购买的商品和剩余金额

 

#脚本内容

[root@localhost opt]# cat shopping_cart.py 
#!/usr/bin/env python
#_*_ coding:utf-8 _*_
import time
import sys
import os

#商品价格
IOS_COMPETER5 = 9000
IOS_SHOUJI5 = 5000
SHOUBIAO = 1000
QIANBAO = 500
PIXIE = 300
YINXIANG = 200
CHUIFENGJI = 50
CHAZHUO = 35

#购物清单文件
os.remove("qd.txt")

#工资
gz = int(raw_input('请输入你的工资: '))
def gz_ye():
     print '你的工资余额为: \033[31m%s\033[0m'  %  gz
def gz_bz():
     print "你的工资余额不足,请购买其他商商品"

#购物菜单
def  select_menu():
print '''
  1、苹果电脑一台9000块
  2、爱疯5S手机一台5000块
  3、天时手表一个1000块
  4、钱包500块
  5、皮鞋300块
  6、音响200块
  7、吹风机50块
  8、插座35块
  9、查看购物清单
  0、退出不买了
 
 --------------------------------------
 '''
select_menu()

#商品选择
menu = int(raw_input('请选择你要购买的商品:'))

#购物计价
while True:
     f= file('qd.txt','ab')
     if menu == 1:
          if gz - IOS_COMPETER5 < 0:
              select_menu()
              gz_bz()
          else:
              gz = gz - IOS_COMPETER5
              select_menu()
              gz_ye()
              f=f.write('苹果电脑 9000'+'\n')

     if menu == 2:
          if gz - IOS_SHOUJI5 < 0:
              select_menu()
              gz_bz()
          else:
              gz = gz - IOS_SHOUJI5
              select_menu()
              gz_ye()
              f=f.write('苹果手机 5000'+'\n')

     if menu == 3:
          if gz - SHOUBIAO < 0:
              select_menu()
              gz_bz()
          else:
              gz = gz - SHOUBIAO
              select_menu()
              gz_ye()
              f=f.write('天时手表 1000'+'\n')

     if menu == 4:
          if gz - QIANBAO < 0:
              select_menu()
              gz_bz()
          else:
              gz = gz - QIANBAO
              select_menu()
              gz_ye()
              f=f.write('钱包 500'+'\n')

     if menu == 5:
          if gz - PIXIE < 0:
              select_menu()
              gz_bz()
          else:
              gz = gz - PIXIE
              select_menu()
              gz_ye()
              f=f.write('皮鞋 300'+'\n')

     if menu == 6:
          if gz - YINXIANG < 0:
              select_menu()
              gz_bz
          else:
              gz = gz - YINXIANG
              select_menu()
              gz_ye()
              f=f.write('音响 200'+'\n')

     if menu == 7:
          if gz - CHUIFENGJI < 0:
              select_menu()
              gz_bz()
          else:
              gz = gz - CHUIFENGJI
              select_menu()
              gz_ye()
              f=f.write('吹风机 50'+'\n')
     
     if menu == 8:
          if gz - CHAZHUO< 0:
              select_menu()
              gz_bz()
          else:
              gz = gz - CHAZHUO
              select_menu()
              gz_ye()
              f=f.write('吹风机 35'+'\n')
 
     if menu == 9:
          f = file('qd.txt','rb')
          xf = 0
          for line in f.readlines():
              list = line.strip().split()
              qian = int(list[1])
              xf = qian + xf
          print '这次购买的物品有:'
          os.system('cat qd.txt')
          print '你这次总共消费\033[31m%s\033[0m元' % xf

     if menu == 0:
         li=[5,4,3,2,1,]
         for i in li:
             time.sleep(1)
             print '          程序将在\033[31m%s\033[0m秒后退出'  % i
             os.remove("qd.txt")
             sys.exit()  
 
     menu = int(raw_input('请继续选择你要购买的商品:'))

 

#脚本执行展示

[root@localhost opt]# python shopping_cart.py 
请输入你的工资: 15000
  1、苹果电脑一台9000块
  2、爱疯5S手机一台5000块
  3、天时手表一个1000块
  4、钱包500块
  5、皮鞋300块
  6、音响200块
  7、吹风机50块
  8、插座35块
  9、查看购物清单
  0、退出不买了
 
 --------------------------------------
 
请选择你要购买的商品:1
  1、苹果电脑一台9000块
  2、爱疯5S手机一台5000块
  3、天时手表一个1000块
  4、钱包500块
  5、皮鞋300块
  6、音响200块
  7、吹风机50块
  8、插座35块
  9、查看购物清单
  0、退出不买了
 
 --------------------------------------
 
你的工资余额为: 6000
请继续选择你要购买的商品:2
  1、苹果电脑一台9000块
  2、爱疯5S手机一台5000块
  3、天时手表一个1000块
  4、钱包500块
  5、皮鞋300块
  6、音响200块
  7、吹风机50块
  8、插座35块
  9、查看购物清单
  0、退出不买了
 
 --------------------------------------
 
你的工资余额为: 1000
请继续选择你要购买的商品:3
  1、苹果电脑一台9000块
  2、爱疯5S手机一台5000块
  3、天时手表一个1000块
  4、钱包500块
  5、皮鞋300块
  6、音响200块
  7、吹风机50块
  8、插座35块
  9、查看购物清单
  0、退出不买了
 
 --------------------------------------
 
你的工资余额为: 0
请继续选择你要购买的商品:8
  1、苹果电脑一台9000块
  2、爱疯5S手机一台5000块
  3、天时手表一个1000块
  4、钱包500块
  5、皮鞋300块
  6、音响200块
  7、吹风机50块
  8、插座35块
  9、查看购物清单
  0、退出不买了
 
 --------------------------------------
 
你的工资余额不足,请购买其他商商品
请继续选择你要购买的商品:9
这次购买的物品有:
苹果电脑 9000
苹果手机 5000
天时手表 1000
你这次总共消费15000元
请继续选择你要购买的商品:0
          程序将在5秒后退出
          程序将在4秒后退出
          程序将在3秒后退出
          程序将在2秒后退出
          程序将在1秒后退出