#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @File : 20180510001.py
# @Author: Anthony.waa
# @Date : 2018/5/10 0007
# @Desc : # 购物清单列表
goods = [
{"name": "书籍", "price": 1999},
{"name": "服装", "price": 10},
{"name": "美女", "price": 20},
{"name": "科技用品", "price": 998},
] # 定义空购物车
shopping = [] # 显示购物清单
print("---欢迎登陆购物系统")
for goods_count, goods_all in enumerate(goods,1):
print(goods_count, goods_all['name'], goods_all['price']) # 循环购物流程
while True: # 输入总金额
salary = input("请输入你当前总资产:").strip()
if salary.isdigit():
salary = int(salary)
else:
print("输入错误,请重新输入.")
continue while True:
# 选择购物商品,并加入购物清单
choice = input("请选择你要购物的商品:").strip()
goods_index = len(goods) if choice.isdigit():
choice = int(choice) # 判断输入选项不能小于元素长度
if choice > 0 and choice <= goods_index:
name_a = goods[choice - 1]['name'] # 单个商品名称
price_a = goods[choice - 1]['price'] # 单个商品价格
if salary > price_a:
if choice == 1:
shopping.append(name_a)
print('购买成功,当前购物车内有:', shopping, '剩余金额为:', salary)
elif choice == 2:
shopping.append(name_a)
print('购买成功当前购物车内有:', shopping, '剩余金额为:', salary)
elif choice == 3:
shopping.append(name_a)
print('购买成功当前购物车内有:', shopping, '剩余金额为:', salary)
elif choice == 4:
shopping.append(name_a)
print('购买成功当前购物车内有:', shopping, '剩余金额为:', salary)
else:
print('没有该类目,请重新输入') salary -= price_a # 剩余金额 else:
print("余额不足,请充值。")
# 充值金额
salary_two = int(input("请输入充值金额:"))
salary += salary_two
print("余额为:", salary)
continue
elif choice.lower():
if choice == 'q':
print("欢迎下次再来,再见。")
exit()
else:
print("输入非法,请重新输入.")
continue

shopping car 1.0的更多相关文章

  1. shopping car 2.0

    #!/usr/bin/env python# -*- coding: utf-8 -*-# @Time : 2018/5/13 0013 10:20# @Author : Anthony.Waa# @ ...

  2. shopping car 3.0

    #!/usr/bin/env python# -*- coding: utf-8 -*-# @File : 购物车3.0.py# @Author: Anthony.waa# @Date : 2018/ ...

  3. python 3.5 购物小程序

    #!/usr/bin/env python #encoding: utf-8 import time import os nowtime = time.strftime('%Y-%m-%d %H:%M ...

  4. 实际情况来看,还是yield很爽

    0 引言 最近公司有一个 php 的项目,要 port 到 node.js 来.我之前没有接触过这个项目,整个项目使用的是 yaf 框架.整个项目流程是调用服务端的业务数据,然后拼装数据,返回给前端: ...

  5. pwnable.tw applestore

    存储结构 0x804B070链表头 struct _mycart_binlist { int *name; //ebp-0x20 int price; //ebp-0x1c struct _mycar ...

  6. python 多个脚本

    1.增删改查haproxy.conf配置文件 1.查询输入:www.oldboy1.com 2.删除输入:{'backend': 'www.oldboy2.org','record':{'server ...

  7. 入门项目 A3 src 主代码

    import json # 调度内置 json 模块,用于数列化输入输出,相比eval,功能更全面,融合度更高from conf import settings # 从配置文件configure (包 ...

  8. R_Studio(关联)对Groceries数据集进行关联分析

    RGui的arules程序包里含有Groceries数据集,该数据集是某个杂货店一个月真实的交易记录,共有9835条消费记录,169个商品 #install.packages("arules ...

  9. 学习Python(一)

    一.Python的基础 1.Python是怎样的语言? 2.Python的安装 Linux安装(python3) yum install -y make zlib zlib-devel gcc-c++ ...

随机推荐

  1. NET MVC FileResult 导出/下载 文件/Excel

    参考http://www.cnblogs.com/ldp615/archive/2010/09/17/asp-net-mvc-file-result.html 1.引入NPOI 2.代码 using ...

  2. C# MVC 延时

    [System.Runtime.InteropServices.DllImport("kernel32.dll")] static extern uint GetTickCount ...

  3. js遍历对象属性

    对象虽然与数组一样,都是数据的集合. 因为对象中的数据是处于无序状态,不能像数组那样,使用下标来遍历对象的所有属性. 如果要遍历对象属性,就必须要使用for in 语句. var a={ A1=180 ...

  4. TCP协议的三次握手、四次挥手

    TCP三次握手 TCP的连接的建立需要发送三个包,一次称为三次握手(Three-way Handshake). 三次握手的目的是连接服务器指定端口,建立TCP连接,并同步连接双方的序列号和确认号并交换 ...

  5. Python之数据结构改造

    { "appList":[ { "id" : 120, "name" : "BIGDATA", "alias& ...

  6. Java JPA通过hql语句查询数据

    import javax.persistence.PersistenceContext; import javax.persistence.Query; public class StudentSer ...

  7. 算法87-----DAG有向无环图的拓扑排序

    一.题目:课程排表---210 课程表上有一些课,是必须有修学分的先后顺序的,必须要求在上完某些课的情况下才能上下一门.问是否有方案修完所有的课程?如果有的话请返回其中一个符合要求的路径,否则返回[] ...

  8. 11.5 【Linq 】连接

    11.5.1 使用 join 子句的内连接 如果你打算把一个巨大的序列连接到一个极小的序列上,应尽可能把小序列作为右边序列 class Program { static void Main(strin ...

  9. [luogu2587 ZJOI2008] 泡泡堂 (贪心)

    传送门 Description 第XXXX届NOI期间,为了加强各省选手之间的交流,组委会决定组织一场省际电子竞技大赛,每一个省的代表队由n名选手组成,比赛的项目是老少咸宜的网络游戏泡泡堂.每一场比赛 ...

  10. django-celery-win10

    setting初始化: 定时任务 增加tasks 启动: