热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

用python编写购物程序(2)的实现步骤和代码示例

本文介绍了使用Python编写购物程序的实现步骤和代码示例。程序启动后,用户需要输入工资,并打印商品列表。用户可以根据商品编号选择购买商品,程序会检测余额是否充足,如果充足则直接扣款,否则提醒用户。用户可以随时退出程序,在退出时打印已购买商品的数量和余额。附带了完整的代码示例。

要求:

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

代码:

1 #!/usr/bin/env python
2 # -*- coding:utf-8 -*-
3 # Author:James Tao
4
5 list_of_goods=[
6 ['iphone',5800],
7 ['Mac Pro',12000],
8 ['Bike',800],
9 ['Watch',2000],
10 ['Coffee',31],
11 ['Book',120]
12 ]
13 list_of_bought=[]
14 dict_of_bought={}
15 salary=input('请输入您的工资:')
16 if salary.isdigit():#判断是否是整数
17 salary=int(salary)
18 while True:
19
20 #输出商品及其编号
21 for index,item in enumerate(list_of_goods):#enumerate取出下标
22 print(index,item)
23 #print(list_of_goods.index(item),item)
24 choice_of_user=input('选择购买商品编号:')
25
26 #判断输入是否合法
27 if choice_of_user.isdigit():
28 choice_of_user=int(choice_of_user)
29
30 #判断编号是否有对应商品
31 if 0<&#61;choice_of_user<len(list_of_goods):
32
33 #判断余额是否足够买此商品
34 if list_of_goods[choice_of_user][1]<&#61;salary:
35
36 #加入购物清单
37 list_of_bought.append(list_of_goods[choice_of_user][0])
38
39 #计算余额&#96;
40 salary-&#61;list_of_goods[choice_of_user][1]
41
42 print(&#39;&#39;&#39;添加{boughtgood}到您的购物车,此刻您的余额为{balance}.
43 &#39;&#39;&#39;.format(boughtgood&#61;list_of_goods[choice_of_user][0],balance&#61;salary))
44 else:
45 print(&#39;您的余额不足,此实余额为%s,不够购买此商品&#39;,salary)
46 else:
47 print(&#39;商品不存在&#39;)
48
49 elif choice_of_user&#61;&#61;&#39;q&#39;:
50
51 #统计购买的商品及数量
52 category_of_bought&#61;set(list_of_bought)
53 for item in category_of_bought:
54 dict_of_bought[item]&#61;list_of_bought.count(item)
55 print(&#39;您购买的商品及数量分别为&#39;,dict_of_bought)
56
57 print(&#39;您的余额为:&#39;,salary)
58 exit()
59 else:
60 print(&#39;输入不合法&#39;)
61 else:
62 print(&#39;输入不合法&#39;)

 

转:https://www.cnblogs.com/BIT-taozhen/p/9735865.html



推荐阅读
  • 技术分享:从动态网站提取站点密钥的解决方案
    本文探讨了如何从动态网站中提取站点密钥,特别是针对验证码(reCAPTCHA)的处理方法。通过结合Selenium和requests库,提供了详细的代码示例和优化建议。 ... [详细]
  • 前言--页数多了以后需要指定到某一页(只做了功能,样式没有细调)html ... [详细]
  • Python自动化处理:从Word文档提取内容并生成带水印的PDF
    本文介绍如何利用Python实现从特定网站下载Word文档,去除水印并添加自定义水印,最终将文档转换为PDF格式。该方法适用于批量处理和自动化需求。 ... [详细]
  • 根据最新发布的《互联网人才趋势报告》,尽管大量IT从业者已转向Python开发,但随着人工智能和大数据领域的迅猛发展,仍存在巨大的人才缺口。本文将详细介绍如何使用Python编写一个简单的爬虫程序,并提供完整的代码示例。 ... [详细]
  • 本文介绍如何使用Python进行文本处理,包括分词和生成词云图。通过整合多个文本文件、去除停用词并生成词云图,展示文本数据的可视化分析方法。 ... [详细]
  • Docker的安全基准
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • 深入理解Tornado模板系统
    本文详细介绍了Tornado框架中模板系统的使用方法。Tornado自带的轻量级、高效且灵活的模板语言位于tornado.template模块,支持嵌入Python代码片段,帮助开发者快速构建动态网页。 ... [详细]
  • 本文介绍了在Windows环境下使用pydoc工具的方法,并详细解释了如何通过命令行和浏览器查看Python内置函数的文档。此外,还提供了关于raw_input和open函数的具体用法和功能说明。 ... [详细]
  • 使用Vultr云服务器和Namesilo域名搭建个人网站
    本文详细介绍了如何通过Vultr云服务器和Namesilo域名搭建一个功能齐全的个人网站,包括购买、配置服务器以及绑定域名的具体步骤。文章还提供了详细的命令行操作指南,帮助读者顺利完成建站过程。 ... [详细]
  • 使用Python在SAE上开发新浪微博应用的初步探索
    最近重新审视了新浪云平台(SAE)提供的服务,发现其已支持Python开发。本文将详细介绍如何利用Django框架构建一个简单的新浪微博应用,并分享开发过程中的关键步骤。 ... [详细]
  • 开发笔记:2020 BJDCTF Re encode
    开发笔记:2020 BJDCTF Re encode ... [详细]
  • 本文深入探讨了HTTP请求和响应对象的使用,详细介绍了如何通过响应对象向客户端发送数据、处理中文乱码问题以及常见的HTTP状态码。此外,还涵盖了文件下载、请求重定向、请求转发等高级功能。 ... [详细]
  • 1.如何在运行状态查看源代码?查看函数的源代码,我们通常会使用IDE来完成。比如在PyCharm中,你可以Ctrl+鼠标点击进入函数的源代码。那如果没有IDE呢?当我们想使用一个函 ... [详细]
  • 本文介绍了一段使用jQuery实现的用户注册页面表单验证代码,适用于前端开发人员学习和参考。该示例结合了HTML、CSS和JavaScript,确保用户输入的数据格式正确。 ... [详细]
  • 探讨在 JavaScript 中使用不同方向的 for 循环来实现跟随鼠标的 div 动画时,为什么会出现不同的视觉效果。 ... [详细]
author-avatar
裴潇艳
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有