Python学习-购物车程序

程序:购物车程序

需求:

  1. 启动程序后,让用户输入工资,然后打印商品列表
  2. 允许用户根据商品编号购买商品
  3. 用户选择商品后,检测余额是否够,够就直接扣款,不够就提醒 
  4. 可随时退出,退出时,打印已购买商品和余额

程序如下:

 1 #!/usr/bin/env python3
 2 # -*- coding: utf-8 -*-
 3 # @Time    : 2018/4/28 16:23
 4 # @Author  : yang
 5 # @File    : Shopping_Cart_Program01.py
 6 # @Software: PyCharm
 7 #定义商品列表
 8 product_list = [('Iphone',6000),
 9                 ('MAC Pro',9800),
10                 ('Bike',800),
11                 ('Watch',10600),
12                 ('Coffee',31),
13                 ('Alex python',120),]
14 shopping_list = []   #定义空的购物车列表
15 #输入工资
16 salary = input('Input your salary:')
17 if salary.isdigit():
18     salary = int(salary)
19     #循环输入需要购买的商品编号
20     while True:
21         # enumerate() 函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列
22         for index,item in enumerate(product_list):    
23             print(index,item)      #打印输出带编号的商品列表
24         user_choice = input('选择要买的商品编号>>>:')    #输入要购买的商品编号
25         if user_choice.isdigit()==False and user_choice.upper() != 'Q':
26             print('\033[1;43m你输入的商品编号不合法!\033[0m')
27             exit()
28         elif user_choice.isdigit()==True:       #判断输入的字符串是否由数字组成
29             user_choice = int(user_choice)
30             if user_choice < len(product_list) and user_choice >=0:
31                 p_item = product_list[user_choice]
32                 if p_item[1] <= salary:    #买得起
33                     shopping_list.append(p_item)
34                     salary -= p_item[1]
35                     print('将商品%s添加到购物车,剩余金额\033[1;31;42m%s\033[0m'%(p_item,salary))
36                     #高亮显示:开头部分:\033[显示方式;前景色;背景色m + 结尾部分:\033[0m
37                 else:    #买不起
38                     print('\033[1;41m你的余额只剩[%s]啦,还买个毛线!\033[0m'%salary)
39             else:
40                 print('\033[1;41m商品%s不存在!\033[0m'%user_choice)
41 
42         #退出购物车程序:打印输出购物列表和余额
43         elif user_choice.upper() == 'Q':
44             print('---------------shopping list---------')
45             for p in shopping_list:
46                 print(p)
47             print('你的余额还剩:',salary)
48             exit()
49         else:
50             exit()
51 else:     #如果输入的工资不合法,则退出程序
52     print('您输入的工资不合法!')
53     exit()

注:程序参照老男孩Alex,附博客地址:http://www.cnblogs.com/alex3714/articles/5717620.html

 

转载于:https://www.cnblogs.com/yangshijia/p/8969175.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python编写购物程序可以实现一个简单的虚拟购物体验。首先,可以定义一个商品类,包括属商品名称、价格、数量等。然后,可以定义一个购物车类,用于添加、删除商品,计算总价等功能。接着,可以设计一个用户界面,让用户输入指令来选择商品、添加到购物车、查看购物车等操作。在程序运行时,可以展示商品列表和价格,用户可以通过输入数字来选择商品并添加到购物车中。购物车中的商品可以随时删除,程序会自动计算购物车商品的总价并显示给用户。 另外,可以利用Python的GUI库来实现一个更加直观的购物界面,包括商品图片、价格、按钮等元素,让用户通过点击来操作。同时,可以引入数据库来存储商品信息,实现商品的增删改查功能。此外,还可以加入付款系统,模拟用户完成购物后进行支付的流程。 在代码编写时,需要考虑异常处理,例如用户输入非法字符、商品数量不足等情况。此外,为了增加程序的可读和维护,可以使用函数、类等模块化的方法组织代码。 通过Python编写购物程序,不仅可以提升自己的编程技能,还能实现一个真实的购物体验,使用户感受到购物的乐趣。同时,也可以让用户更好地理解面向对象编程、GUI设计、数据库等知识点。这样的程序既具有一定的实用,又能够促进用户学习和技能提升。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值