Day2课后作业:购物车简单版
PRODUCT_LIST = [
['iphone7',6500],
['macbook',12000],
['pythonbook',66],
['bike',999],
['coffee',31]
]
SHOPPING_CAR=[]
while True:
salary = input("salary:")
if salary.isdigit():
salary=int(salary)
break
else:
continue
while True:
print("\033[32;1m欢迎来到购物商城!\033[0m".center(50,"*"))
for index,i in enumerate(PRODUCT_LIST):
print(index,i)
continue
print("\033[32;1m祝您购物愉快!\033[0m".center(50, "*"))
choice = input("your choice is:")
if choice.isdigit():
choice=int(choice)
if choice > 0 and choice < len(PRODUCT_LIST):
p_ch = PRODUCT_LIST[choice]
if salary >= p_ch[1]:
salary -= p_ch[1]
SHOPPING_CAR.append(p_ch)
print("您选购的产品是:\033[31;1m[%s]\033[0m,您的余额还剩:\033[31;1m[%s]\033[0m"%(p_ch, salary))
else:
print("您的余额不足,您只有[%s]"%(salary))
else:
print("您输入的产品不存在!")
elif choice =="q":
choice2=(input("您要退出商品城吗?[y/n]:"))
if choice2 =="y":
print("\033[41;1m您购买的商品是:\033[0m".center(50,"*"))
for i in (SHOPPING_CAR):
print(i)
print("Your banlance salary is \033[31;1m%s\033[0m " % (salary))
elif choice2 == "n":
continue
else:
break
exit()
解释:
1,定义1个变量PRODUCT_LIST,来加载商品列表
2,定义1个变量SHOPPING_CAR,来加载已经购的商品
3,定义一个if语句,如果输入的钱数是正整数,那么就继续下面的步骤,不然就继续输入,用一个while循环保证一直输入
4,定义一个while循环,表示可以一直选择商品。
5,定义一个for循环,用enumerate格式把商品打印出来
6,并且打印一行文字“欢迎来到购物商城”等并添加颜色,后面也有添加颜色。
7,判断:输入的商品序号是否为正整数,如果是,继续
8,判断,如果输入的0<序号<商品种类,继续
否则,输出,“您输入的产品不存在”
9,判断所选商品的价格是否小于自己的钱数,
如果小于自己的钱数,输出:选择的产品,并且计算 出剩余钱数,否则,输出“您的余额不足,您只有..”
10.如果输入q,那么就进行判断,选择y或者n
如果选择n,那么就继续输入
如果选择y,那么,就打印出所购买的商品,和剩余的钱数。
11.退出
流控图:

Day2课后作业:购物车简单版的更多相关文章
- Day2课后作业:三级菜单简单版
menu = { '北京':{ '海淀':{ '五道口':{ 'soho':{}, '网易':{}, '谷歌':{} }, '中关村':{ '爱奇艺':{}, '汽车之家':{}, 'youku':{ ...
- Day2课后作业:sed替换程序
#!/usr/bin/env python #_*_conding:utf-8_*_ import sys,os old_file = sys.argv[1] new_file = sys.argv[ ...
- 吴恩达课后作业学习2-week1-2正则化
参考:https://blog.csdn.net/u013733326/article/details/79847918 希望大家直接到上面的网址去查看代码,下面是本人的笔记 4.正则化 1)加载数据 ...
- 老男孩Day11作业:selectors版socket
一.作业需求: 使用SELECT或SELECTORS模块实现并发简单版FTP 允许多用户并发上传下载文件 二.readme 一.作业需求: 使用SELECT或SELECTORS模块实现并发简单版FTP ...
- JavaMail简单版实验测试
前言: 最近由于实现web商城的自动发送邮件功能的需求,故涉猎的邮箱协议的内部原理.现将简单版的Java Mail实例做个代码展示,并附上其中可能出现的bug贴出,方便感兴趣的读者进行测试! 1.载入 ...
- 小米抢购(简单版v0.1)-登录并验证抢购权限,以及获取真实抢购地址
小米(简单版)-登录并验证抢购权限,以及获取真实抢购地址! 并不是复制到浏览器就行了的 还得传递所需要的参数 这里只是前部分 后面的自己发挥了 { "stime": 1389 ...
- String字符串类课后作业
String动手动脑和课后作业 请运行以下示例代码StringPool.java,查看其输出结果.如何解释这样的输出结果?从中你能总结出什么? 结果: 总结:在Java中,内容相同的字串常量(&quo ...
- JAVA第三周课后作业
JAVA课后作业 一.枚举类型 代码: enum Size{SMALL,MEDIUM,LARGE}; public cl ass EnumTest { public static void main( ...
- java课后作业
课后作业之字串加密: 设计思想: 1.输入要加密的英文子串str 2.定义num=str的字符串长度 3.将字符串转化为单个字符 4.每个字符+3,向后移3个 5.定义str1,将新得到的每个字符加到 ...
随机推荐
- Shell之历史操作记录与欢迎信息
history: ~/.bash_history:用于记录所有的操作记录 欢迎信息:/etc/issue,只对本地登录生效. 远程终端的欢迎信息:/etc/issue.net
- 2013 gzhu 校赛
题目描述: Integer in C++ Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 128000/64000 KB (Java/Othe ...
- PGTM通用性能测试模型
PTGM通用性能测试模型 一. 测试前期准备阶段 目标: 1. 保证系统稳定性: 2. 建立合适的测试团队. 活动: 1. 系统基础功能验证 类似于BVT测试,确保被测系统已具备进行性 ...
- css父元素背景覆盖其子元素背景
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- Linux-正则表达式与三剑客
1 固化命令文件 登录时执行文件的顺序 /etc/profile /etc/profile.d ~/.bash_profile ~/.bashrc /etc/bashrc 非登录shell ~/.ba ...
- 「USACO16OPEN」「LuoguP3146」248(区间dp
题目描述 Bessie likes downloading games to play on her cell phone, even though she doesfind the small to ...
- Watir 简化日常工作实例
公司的官方主页要优化搜索任务,一共有110个独立页面,开发工程师做了以下工作:1. 为所有这些页面的每个图片添加了alt:2. 为页面上的每个标题添加了面包屑:3. 为网站最重要的标题设置H1标签,而 ...
- 关于ubuntu 16.04 docker常用命令
1.sudo docker ps -a 查看当前docker实例的信息: CONTAINER ID IMAGE COMMAND ...
- bzoj 1798 Seq 维护序列seq —— 线段树
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1798 这题还4A... 注意:cnt 从1开始:各种模 p:乘法标记初始值是 1:可能乘 0 ...
- 洛谷P1522牛的旅行——floyd
题目:https://www.luogu.org/problemnew/show/P1522 懒于仔细分情况而直接像题解那样写floyd然后不明白最后一步max的含义了... 分开考虑怎么保证在一个内 ...