extr_shopping
__author__ = 'ZZG' # noinspection PyCallingNonCallable
shopping_list =[
("iphone",5300),
("book",55),
("watch",2200),
("bike",950),
("pc",11000),
("VR glass", 1000)
]
goods_list=[]#购买商品清单
salary = input("please enter you salary:")
#判断工资是否为数字
if salary.isdigit():
salary = int(salary)
#打印商品编号和商品
while True:
for index,item_list in enumerate(shopping_list):
print(index,item_list)
product_num = input("你想买什么物品,请输入编号:")
#判断商品编号是否为数字
if product_num.isdigit():
product_num = int(product_num)
#判断用户输入的商品编号是否在列表中
if product_num < len(shopping_list) and product_num >= 0:
#选择的商品
p_item = shopping_list[product_num]
#判断工资能否购买选择的商品
if salary > p_item[1]:
goods_list.append(p_item)
salary -= p_item[1]
print("---------已购买的商品列表---------")
print("你成功购买了%s,你的余额为\033[032;1m%s\033[0m"% (p_item,salary))
else:
print("你的余额为\033[031;1m%s\033[0m,就这点钱还想买东西!"%(salary))
else:
print("\033[031;1minvalid input\033[0m") elif product_num == "q":
print("---------已购买的商品列表--------")
for p in goods_list:
print(p)
print("你当前余额为:",salary)
exit() else:
print("\033[031;1minvalid input\033[0m") else:
print("\033[031;1minvalid input\033[0m")
这个代码和购物车实现的是一样,可是代码风格就不一样了,有了不一样的感觉!很好使
extr_shopping的更多相关文章
随机推荐
- poj 1155 TELE(树形DP)
TELE Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 4863 Accepted: 2673 Description ...
- redis源码分析之发布订阅(pub/sub)
redis算是缓存界的老大哥了,最近做的事情对redis依赖较多,使用了里面的发布订阅功能,事务功能以及SortedSet等数据结构,后面准备好好学习总结一下redis的一些知识点. 原文地址:htt ...
- css媒体查询:响应式网站
css媒体查询:响应式网站 媒体查询 包含了一个媒体类型和至少一个使用如宽度.高度和颜色等媒体属性来限制样式表范围的表达式.CSS3加入的媒体查询使得无需修改内容便可以使样式应用于某些特定的设备范围. ...
- ⑧bootstrap组件 文字图片 下拉菜单 按钮组 使用基础案例
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- Python爬虫小实践:爬取任意CSDN博客所有文章的文字内容(或可改写为保存其他的元素),间接增加博客访问量
Python并不是我的主业,当初学Python主要是为了学爬虫,以为自己觉得能够从网上爬东西是一件非常神奇又是一件非常有用的事情,因为我们可以获取一些方面的数据或者其他的东西,反正各有用处. 这两天闲 ...
- windows下配置wampserver
第一,打开局域网访问 配置文件:点击右下角的WAMP 服务器小托盘,选择Apache>httpd.conf 搜索关键字 "deny from ",会发现一处 "de ...
- C#中结构体定义并转换字节数组
最近的项目在做socket通信报文解析的时候,用到了结构体与字节数组的转换:由于客户端采用C++开发,服务端采用C#开发,所以双方必须保证各自定义结构体成员类型和长度一致才能保证报文解析的正确性,这一 ...
- 浅谈JavaScript的apply和call语句
我们试图在回调函数中,用this表示oDiv对象,这样感觉爽. 1 animate(oDiv,{"left":600},2000,function(){ 2 t ...
- 《天书夜读:从汇编语言到windows内核编程》六 驱动、设备、与请求
1)跳入到基础篇的内核编程第7章,驱动入口函数DriverEnter的返回值决定驱动程序是否加载成功,当打算反汇编阅读驱动内核程序时,可寻找该位置. 2)DRIVER_OBJECT下的派遣函数(分发函 ...
- SSM :MyBatis与Spring的整合
MyBatis与Spring的整合 一:Spring整合MyBatis的准备工作: (1.)在项目中加入Spring,ByBatis及整合相关的jar文件 (2.)建立开发目录结构,创建实体类 (3. ...