用另一种方式完成购物车的功能实现

#!/usr/bin/python
zijin = input("请输入资金:")
if zijin.isdigit():
zijin = int(zijin)
else:
print("请输入数字!")
exit_flag = False
print("欢迎来到本人的购物小店".center(40,"-"))
shop_list = [
("电脑", 1999),
("鼠标", 800),
("键盘", 299),
("鼠标垫", 100)
]
gouwuche = []
xiaofei = 0
while exit_flag is not True:
print("商品列表如下:".center(44,"-"))
for item in enumerate(shop_list):
index = item[0]
sp_name = item[1][0]
sp_price = item[1][1]
print(index, ".", sp_name, sp_price)
user_choice = input("请输入商品编号进行购买:")
if user_choice.isdigit():
user_choice = int(user_choice)
if user_choice < len(shop_list):
sp_item = shop_list[user_choice]
if sp_item[1] <= zijin:
gouwuche.append(sp_item)
zijin -= sp_item[1]
xiaofei += sp_item[1]
print("您成功购买了:[%s] 花费了:[%s] 余额为:[%s]" %(sp_item[0], sp_item[1], zijin))
else:
print("您的金额不足!还差 [%s] 才能购买此商品!" %(sp_item[1] - zijin))
else:
if user_choice == "q" or user_choice == "quick":
print("您本次购买了如下商品:".center(40, "-"))
for g_list in gouwuche:
print(g_list)
print("结束".center(45, "-"))
print("您总共消费了:[%s] 余额为:[%s]" %(xiaofei, zijin))
exit_flag = True

python编写购物车新写法的更多相关文章

  1. python编写购物车

    上次的学习又没有坚持下来,工作忙的不可开交,但我反思了一下还是自己没有下定决心好好学习,所以这次为期3个月的学习计划开始了,下面是这次学习后重新编写的购物车初版代码. 1 # 功能要求: 2 # 要求 ...

  2. python编写购物车小程序

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

  3. python编写购物车-实时购买

    本次编写的是实时购买(输入商品直接进行购买),余额不足可以进行充值或结束购物 1 goods = [ 2 {"name": "电脑", "price& ...

  4. python之编写购物车(第二天)

    作业: 编写购物车 具体实现了如下功能: 1.可购买的商品信息显示 2.显示购物车内的商品信息.数量.总金额 3.购物车内的商品数量进行增加.减少和商品的删除 4.用户余额的充值 5.用户购买完成进行 ...

  5. 【转】python编写规范——中标软件有限公司测试中心

    [转]python编写规范 一.说明 二.内容 1. 代码布局 1.1 缩进 1.2 表达式和语句中的空格 1.3 行的最大长度 1.4 空行... 1.5 编码... 2. 语句... 2.1 标准 ...

  6. Python 3.8 新特性来袭

    Python 3.8 新特性来袭 Python 3.8是Python语言的最新版本,它适合用于编写脚本.自动化以及机器学习和Web开发等各种任务.现在Python 3.8已经进入官方的beta阶段,这 ...

  7. Python 3.9 新特性速览

    国庆假期,Python 社区发布了 3.9 版本的第一个 stable release. 相比于 3.8,Python 3.9 新特性众多,但不少特性与大多数 Python"使用者" ...

  8. 【转载】Python编写简易木马程序

    转载来自: http://drops.wooyun.org/papers/4751?utm_source=tuicool 使用Python编写一个具有键盘记录.截屏以及通信功能的简易木马. 首先准备好 ...

  9. [BS-02] iOS数组、字典、NSNumber 新写法—— @[]、@{}

    IOS数组.字典.NSNumber 新写法—— @[].@{}   //标准写法 NSNumber * number = [NSNumber numberWithInt:]; NSArray * ar ...

随机推荐

  1. Java基础(八)——IO流1_字节流、字符流

    一.概述 1.介绍 I/O是 Input/Output 的缩写,IO流用来处理设备之间的数据传输,如读/写文件,网络通讯等.Java对数据的操作是通过流的方式进行.java.io 包下提供了各种&qu ...

  2. Chapter 22 Target Trial Emulation

    目录 22.1 The target trial 22.2 Causal effects in randomized trails 22.3 Causal effects in observation ...

  3. elasticsearch之多索引查询

    一.问题源起 在elasticsearch的查询中,我们一般直接通过URL来设置要search的index: 如果我们需要查询的索引比较多并且没有什么规律的话,就会面临一个尴尬的局面,超过URL的长度 ...

  4. 编写Java程序,使用抽象类和抽象方法构建不同动物的扑食行为,抽象类设计

    返回本章节 返回作业目录 需求说明: 不同的动物都有进食的行为,但是在进食前需要捕获到食物后才可以进食. 要求定义一个抽象的动物类,该类中有一个抽象的捕食方法,和一个非抽象的进食方法.在进食方法中调用 ...

  5. Oracle之增、删、改、查

    结构化查询语言 (Structured Query Language, SQL) SQL的组成: 数据操作语言(DML) 对数据进行查询.插入.删除和修改等操作,例如SELECT.INSERT.UPD ...

  6. SpringCloud创建Config Client配置读取

    1.说明 本文详细介绍配置中心客户端使用方法, 即Config Client到Config Server读取配置, 这里以创建Config Client服务为例, 基于已经创建好的Config Ser ...

  7. Ranger开源流水线docker化实践案例

    1.背景 开发部门决定在Apache Ranger开源社区贡献代码,目标是个人国内排名Top1,世界排名Top2,并且在已经成为Ranger项目的Committer情况下,争取成为Ranger项目的P ...

  8. 【计理05组01号】R 语言基础入门

    R 语言基本数据结构 首先让我们先进入 R 环境下: sudo R 赋值 R 中可以用 = 或者 <- 来进行赋值 ,<- 的快捷键是 alt + - . > a <- c(2 ...

  9. Windows alias 给cmd命令起别名

    场景: Linux的alias命令是个非常实用的工具,任何命令通过alias可以精简到很短,比如:alias l='ls -l' Windows也有alias类似的命令,就是:doskey,开启方法也 ...

  10. 通过springBoot集成搭建webScoket服务器

    前言: 最近工作中有一个需求,就是服务端要主动推送消息给客户端,而我们平常的Http请求只能一请求一响应,为此学习了webScokset通讯技术,以下介绍的是java 通过SpringBoot集成we ...