Python实现购物车购物小程序


Posted in Python onApril 18, 2018

概要

按理说,我们入门的第一个小程序都应该是Hello World。因为比较简单,我这也就不做过多的演示 了。
下面是我写的一个小程序。主要用于练习Python的基本语法,以及入门。

主要实现功能

  • 要求用户输入自己预期消费额度.
  • 展示现有商品信息,要求用户选择
  • 用户选择对应商品标号后(注意判断是否超出预期消费额度等操作),保存到购物车
  • 用户退出后显示购物车信息以及剩余额度情况

代码:

#!/usr/bin/env python
# -*- coding: utf-8 -*-

"""
@author: 烽火
@license: Apache Licence
@file: shopping.py
@time: 6/16/17 10:05 AM
"""

goods = [
  ("IPhone", 5800),
  ("Watch", 2000),
  ("MacBook", 12000)]

goods_cart = []

mybudget = input("请输入您的预算:")

# 不考虑是小数的情况
while not mybudget.isdigit():
  mybudget = input("输入有误,请重新输入您的预算:")
mybudget = int(mybudget);

while True:
  print("商品列表".center(50, "-"))
  print("编号".center(8, " "), "名称".ljust(30, " "), "价格".ljust(10, " "))
  for i in enumerate(goods):
    print(str(i[0]).center(10, " "), str(i[1][0]).ljust(31, " "), str(i[1][1]).ljust(10, " "))

  user_choose = input("请输入您的选择:")

  if user_choose.isdigit():
    user_choose = int(user_choose)
    if user_choose >= 0 and user_choose < len(goods):
      if (mybudget - goods[user_choose][1]) >= 0:
        goods_cart.append(goods[user_choose])
        mybudget -= goods[user_choose][1]
        print("预算还有%d" % mybudget)
      else:
        print("预算不够啦~")
    else:
      print("不存在该商品~")

  elif user_choose == 'q':
    break

  else:
    print("您的输入有误~")

print("预算还剩%d了" %(mybudget))
print("购物车商品信息".center(50, "-"))

for i in enumerate(goods_cart):
    print(str(i[0]).center(10, " "), str(i[1][0]).ljust(31, " "), str(i[1][1]).ljust(10, " "))

运行结果

Python实现购物车购物小程序

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中实现两个字典(dict)合并的方法
Sep 23 Python
python 循环遍历字典元素的简单方法
Sep 11 Python
python深度优先搜索和广度优先搜索
Feb 07 Python
基于Pandas读取csv文件Error的总结
Jun 15 Python
python+pyqt5实现24点小游戏
Jan 24 Python
Python使用ctypes调用C/C++的方法
Jan 29 Python
Python实现的文轩网爬虫完整示例
May 16 Python
python 机器学习之支持向量机非线性回归SVR模型
Jun 26 Python
Django框架orM与自定义SQL语句混合事务控制操作
Jun 27 Python
使用Python为中秋节绘制一块美味的月饼
Sep 11 Python
Pyqt助手安装PyQt5帮助文档过程图解
Nov 20 Python
python try...finally...的实现方法
Nov 25 Python
详谈python中冒号与逗号的区别
Apr 18 #Python
python logging日志模块以及多进程日志详解
Apr 18 #Python
详解Python3 中hasattr()、getattr()、setattr()、delattr()函数及示例代码数
Apr 18 #Python
Python中数组,列表:冒号的灵活用法介绍(np数组,列表倒序)
Apr 18 #Python
浅谈numpy数组中冒号和负号的含义
Apr 18 #Python
对python numpy数组中冒号的使用方法详解
Apr 17 #Python
JavaScript实现一维数组转化为二维数组
Apr 17 #Python
You might like
php设计模式 Decorator(装饰模式)
2011/06/26 PHP
php使用Imagick生成图片的方法
2015/07/31 PHP
PHP PDOStatement::fetchAll讲解
2019/01/31 PHP
php实现session共享的实例方法
2019/09/19 PHP
extjs fckeditor集成代码
2009/05/10 Javascript
IE6下js通过css隐藏select的一个bug
2010/08/16 Javascript
Javascript 类型转换方法
2010/10/24 Javascript
jqgrid 简单学习笔记
2011/05/03 Javascript
JQuery调webservice实现邮箱验证(检测是否可用)
2013/05/21 Javascript
js+CSS实现模拟华丽的select控件下拉菜单效果
2015/09/01 Javascript
悬浮广告方法日常收集整理
2016/03/18 Javascript
Immutable 在 JavaScript 中的应用
2016/05/02 Javascript
详解jQuery选择器
2016/12/21 Javascript
详解vue.js的事件处理器v-on:click
2017/06/27 Javascript
VUE中使用Vue-resource完成交互
2017/07/21 Javascript
React-Native之定时器Timer的实现代码
2017/10/04 Javascript
nginx+vue.js实现前后端分离的示例代码
2018/02/12 Javascript
解决vue v-for 遍历循环时key值报错的问题
2018/09/06 Javascript
mustache.js实现首页元件动态渲染的示例代码
2020/12/28 Javascript
Python3 能振兴 Python的原因分析
2014/11/28 Python
利用python模拟sql语句对员工表格进行增删改查
2017/07/05 Python
Python小程序之在图片上加入数字的代码
2019/11/26 Python
基于canvas使用贝塞尔曲线平滑拟合折线段的方法
2018/01/10 HTML / CSS
Burberry英国官网:英国标志性奢侈品牌
2017/03/29 全球购物
JAVA程序员面试题
2012/10/03 面试题
信用社实习人员自我鉴定
2013/09/20 职场文书
医学实习生自我鉴定
2013/12/12 职场文书
服务员岗位责任制
2014/02/11 职场文书
我的梦想演讲稿
2014/04/30 职场文书
升旗仪式演讲稿
2014/05/08 职场文书
2015年女工委工作总结
2015/07/27 职场文书
担保公司2015年终工作总结
2015/10/14 职场文书
只用20行Python代码实现屏幕录制功能
2021/06/02 Python
Go语言实现Snowflake雪花算法
2021/06/08 Golang
关于PHP数组迭代器的使用方法实例
2021/11/17 PHP
Go web入门Go pongo2模板引擎
2022/05/20 Golang