目标要求:

1、用户输入购物预算

2、打印商品清单,由用户选择,预算够则购买,不够则提示

3、输入q,退出程序

4、购物结束,显示购买的东西和余额

实现:

1、用列表存储商品及价格信息

2、建立空列表存放购买的商品,每次购买成功,就append

3、if判断是否数字、是否是q,是否输入正确的商品编号,while实现循环,直到用户输入q退出

 print("---本程序用于购买预算内商品。---")
print("---用户输入预算,然后选择商品,若预算足够,则买入,加入购物车,否则提示不能买。---" )
print("---按q退出购买程序。---\n") def printproduct(list):
for idx,item in enumerate(list):
print(idx+1,":",item) product=["IPhone 6500","bike 800","Macbook 12000","watch 3000","coffee 31","book 81"]
cart=[] budget=input("请输入您的购物预算或按q退出: ")
while budget!='q':
if str(budget).isdigit():
budget=int(budget)
printproduct(product)
choiceidx = input("请输入您想买的商品序号: ")
while choiceidx!='q':
if choiceidx.isdigit():
choiceidx=int(choiceidx)
if choiceidx in range(1,len(product)+1):
if int(product[choiceidx - 1].split(" ")[1]) < budget:
print("商品【", product[choiceidx - 1].split(" ")[0], "】购买成功")
cart.append(product[choiceidx - 1].split(" ")[0])
budget -= int(product[choiceidx - 1].split(" ")[1])
else:
print("预算不足,不能购买")
else:
print("请输入正确的商品编号")
else:
print("请输入正确的商品编号")
printproduct(product)
choiceidx = input("请输入您想买的商品序号: ")
else:
print("您买了:")
print(cart)
print("您剩余: ",budget)
exit()
else:
print("输入的预算不是数字,请重新输入。")
budget = input("请输入您的购物预算: ")
print("您买了:")
print(cart)
print("您剩余: ",budget)

python--简易购物车实现的更多相关文章

  1. Python简易购物车程序

    2019年5月24日,是我离开北京回学校的日子.我退了组的房子,辞了工作,带着对小秋香不舍回家,这匆匆一别,不知何时才是归期. 这几天都疏于学习,因为每一天我都会和她找点有意思的事情来做,如果这一别就 ...

  2. [源码]Python简易http服务器(内网渗透大文件传输含下载命令)

    Python简易http服务器源码 import SimpleHTTPServerimport SocketServerimport sysPORT = 80if len(sys.argv) != 2 ...

  3. Session机制二(简易购物车案例)

    一:案例一(简易购物车) 1.目录结构 2.step1.jsp <%@ page language="java" contentType="text/html; c ...

  4. Python之购物车

    Python之购物车 msg_list = [ ['iphone',8888], ['coffe',38], ['book',90], ['Tesla',100000], ['RR',10000000 ...

  5. Python 简易web日志查看工具&可改装为命令行工具

    Python 简易web日志查看工具&可改装为命令行工具 效果图 原理 利用python的paramiko库模拟ssh登录操作,并执行tail命令 所需库 flask.paramiko.gev ...

  6. javaweb练手项目jsp+servlet简易购物车系统

    简易购物车项目 这是一个用intellij IDEA做的简易的javaweb项目,开发环境使用的jdk1.8和tomcat8以及mysql数据库. 1.项目开发准备: 创建github仓库 项目框架搭 ...

  7. ~~小练习:python的简易购物车~~

    进击のpython 1,用户先给自己的账户充钱:比如先充3000元. 2,有如下的一个格式: goods = [{"name": "电脑", "pri ...

  8. [ Python -1 ] 简易购物车程序

    练习: 1. 要求用户输入总资产,例如:2000 2. 显示商品列表,让用户根据序号选择商品,加入购物车 3. 购买,如果商品总额大于总资产,提示账户余额不足,否则,购买成功. goods = [{' ...

  9. Python初探-购物车程序

    要求: 1,用户进入后,有欢迎语并提示用户输入本金 2.用户输入正确的内容后有购物菜单显示给用户 3.当用户的本金不足以购买商品的时候有提示余额不足并告知差额 4.成功购物后提示已购买内容和购买后的余 ...

  10. python简易爬虫来实现自动图片下载

    菜鸟新人刚刚入住博客园,先发个之前写的简易爬虫的实现吧,水平有限请轻喷. 估计利用python实现爬虫的程序网上已经有太多了,不过新人用来练手学习python确实是个不错的选择.本人借鉴网上的部分实现 ...

随机推荐

  1. VS 2017开发插件

    codemaid 代码清洁工具 commentsPlus 注释以斜体方式展示,并提供额外的注释格式 viasfora 尖括号颜色设置 reshaper 必备

  2. 远程Get,Post请求工具类

    1.远程请求工具类   import java.io.*; import java.net.URL; import java.net.URLConnection; import java.util.L ...

  3. 验证码的Java实现--jsp

    <%@ page language="java" pageEncoding="UTF-8" %> <%@ page contentType=& ...

  4. innodb和myisam存储引擎插入速度

    --innodb和myisam存储引擎插入速度 ------------------------------------2014/05/21 MySQL 5.6 全部默认设置,插入数据9999条,性能 ...

  5. MySQL登录汇总

    --MySQL登录汇总 --------------------2014/5/17 1. ERROR 1045错误ERROR 1045 (28000): Access denied for user ...

  6. mac监听Dock激活程序

    mac监听Dock激活程序 涉及库添加: LIBS += -framework CoreFoundation -framework Carbon -lobjc 涉及头文件: #include < ...

  7. php面试题汇总三(基础篇附答案)

    问题 1. 如何访问会话变量(session)? A.通过$_GET B.通过$_POST C.通过$_REQUEST D.通过全局变量 E.以上都不对 2. 哪个函数能让服务器输出如下 header ...

  8. markdownpad生成目录

    生成目录 document.addEventListener("DOMContentLoaded", function() { // 生成目录列表 var outline = do ...

  9. MySQL 账户管理

    一.当前日期.当前用户.当前数据库版本 mysql> select curdate(),version(),database(),user(); +------------+---------- ...

  10. 性能测试系列学习 day1

    性能测试的最终目标是为了最大限度的满足用户的需求,我们通常为了达到以下目标而进行性能测试: (1)评估系统的能力:测试中得到的负荷和响应时间数据可以被用于验证所计划的模型的能力,并帮助作出决策: (2 ...