06python上
product_list=[
('Mac',9000),
('kindle',800),
('tesla',900000),
('python book',105),
('bike',2000), ]
saving=input('please input your money:')
shopping_car=[]
if saving.isdigit(): # 做出检验,检验输入是否为数字
# isgraph检验是否为定义字符
# isdigit检验是否为数字
saving=int(saving) # int=()做出一个类型转换
while True:
#打印商品内容
for i,v in enumerate(product_list,1): #enumerate 在清单前面带出索引 加参数 1 表示编号从一开始
print(i,'>>>>',v) #i,v 赋予给 索引和清单 #引导用户选择商品
choice=input('选择购买商品编号[退出:q]:') #验证输入是否合法
if choice.isdigit():
choice=int(choice)
if choice>0 and choice<=len(product_list):
#将用户选择商品通过choice取出来
p_item=product_list[choice-1] #如果钱够,用本金saving减去该商品价格,并将该商品加入购物车
if p_item[1]<saving: # [1] 表示调用索引【1】
saving-=p_item[1] shopping_car.append(p_item) #将所选商品放入购物车。 else:
print('余额不足,还剩%s'%saving) #显示所剩余额
print(p_item)
else:
print('编码不存在') #承接第二个 if 语句
elif choice=='q':
print('------------您已经购买如下商品----------------')
#循环遍历购物车里的商品,购物车存放的是已买商品
for i in shopping_car:
print(i)
print('您还剩%s元钱'%saving) # %s格式化输出
break # 跳出循环
else:
print('invalid input')2018-08-08
最次的 购物车
#_author:supreme
#time:2018/8/8,9:54
#a=[[1,2,],"meony",4,(2,3,4)]
#print(a[0][1]) product_list=[
(" Mac Book",12000),
("自行车",1000),
("饮水机",1500),
("茶几",2000),
("小米电视",4000),
("小米盒子",200),
("云米电冰箱",4000), ]
saving=input("输入您现有的金额:")
shopping_car=[]
if saving.isdigit():
saving=int(saving)
while True:
for i,v in enumerate(product_list,1):
print(i,"<<<<",v)
choice=input("选择购买商品编号[退出:q]:")
if choice.isdigit():
choice = int(choice)
if choice > 0 and choice <= len(product_list):
p_item=product_list[choice-1]
if p_item[1] < saving:
saving -= p_item[1]
shopping_car.append(p_item)
else:
print("余额不足,还剩%s" %saving)
print(p_item)
else:
print("编码不存在")
elif choice == "q":
print("-------您已经购买如下商品--------")
for i in shopping_car:
print(i)
print("您还剩%s元钱" % saving)
break
else:
print('invalid input')删除: a.remove()
a.pop() # ()内容为数字 ,牵引的编号
del #可以删除任何值、表、对象。
计算 count
添加 extend
附加 append
len(product_list) 显示列表长度
06python上的更多相关文章
- Asp.Net Mvc 使用WebUploader 多图片上传
来博客园有一个月了,哈哈.在这里学到了很多东西.今天也来试着分享一下学到的东西.希望能和大家做朋友共同进步. 最近由于项目需要上传多张图片,对于我这只菜鸟来说,以前上传图片都是直接拖得控件啊,而且还是 ...
- [APUE]进程控制(上)
一.进程标识 进程ID 0是调度进程,常常被称为交换进程(swapper).该进程并不执行任何磁盘上的程序--它是内核的一部分,因此也被称为系统进程.进程ID 1是init进程,在自举(bootstr ...
- 关于解决python线上问题的几种有效技术
工作后好久没上博客园了,虽然不是很忙,但也没学生时代闲了.今天上博客园,发现好多的文章都是年终总结,想想是不是自己也应该总结下,不过现在还没想好,等想好了再写吧.今天写写自己在工作后用到的技术干货,争 ...
- PHP搭建大文件切割分块上传功能
背景 在网站开发中,文件上传是很常见的一个功能.相信很多人都会遇到这种情况,想传一个文件上去,然后网页提示"该文件过大".因为一般情况下,我们都需要对上传的文件大小做限制,防止出现 ...
- 深入浅出Redis-redis底层数据结构(上)
1.概述 相信使用过Redis 的各位同学都很清楚,Redis 是一个基于键值对(key-value)的分布式存储系统,与Memcached类似,却优于Memcached的一个高性能的key-valu ...
- jquery.uploadify文件上传组件
1.jquery.uploadify简介 在ASP.NET中上传的控件有很多,比如.NET自带的FileUpload,以及SWFUpload,Uploadify等等,尤其后面两个控件的用户体验比较好, ...
- 在传统.NET Framework 上运行ASP.NET Core项目
新的项目我们想用ASP.NET Core来开发,但是苦于我们历史的遗产很多,比如<使用 JavaScriptService 在.NET Core 里实现DES加密算法>,我们要估计等到.N ...
- .NET Core & ASP.NET Core 1.0在Redhat峰会上正式发布
众所周知,Red Hat和微软正在努力使.NET Core成为Red Hat企业版Linux (RHEL)系统上的一流开发平台选项.这个团队已经一起工作好几个月了,RHEL对.NET有许多需求.今天在 ...
- Windows 7上执行Cake 报错原因是Powershell 版本问题
在Windows 7 SP1 电脑上执行Cake的的例子 http://cakebuild.net/docs/tutorials/getting-started ,运行./Build.ps1 报下面的 ...
随机推荐
- LNMP(一)
第二十课LNMP(一) 目录 一.LNMP架构介绍 二.MySQL安装 三.PHP安装 四.Nginx介绍 五.Nginx安装 六.扩展 一.LNMP架构介绍 之前已经学习过LAMP架构,与LAMP相 ...
- Linux系统基本操作命令
1.文件与文件夹(目录)操作命令 可以参考:http://www.runoob.com/linux/linux-command-manual.html 1)rm:删除命令 例:$ rm -i 文 ...
- JAVA学习笔记系列2-Java程序的运行机制
计算机高级语言的类型主要有编译型和解释型两种,而java语言是两种类型的结合. java首先利用文本编辑器编写java源程序,源文件后缀名为.java,再利用编译器(javac)将源程序编译成字节码文 ...
- @Autowired Map<String , Object> xx
http://www.cnblogs.com/davidwang456/p/4432410.html @Autowired 标注作用于 Map 类型时,如果 Map 的 key 为 String 类型 ...
- ORA-00847: MEMORY_TARGET/MEMORY_MAX_TARGET and LOCK_SGA cannot be set together
群里有位兄弟,测试系统修改sga_lock=true参数后,重启库报错 ORA-00847: MEMORY_TARGET/MEMORY_MAX_TARGET and LOCK_SGA cannot b ...
- ID3-C45-CART
区别:使用不同的属性选择度量. 信息增益偏向多值属性 信息增益率倾向产生不平衡的划分 基尼指数偏向多值属性,并且当类的数量很大时会有困难,还倾向于导致相等大小的分区和纯度 C4.5: 优点:产生的分类 ...
- Gym - 100796I:Shell Game(圆台的最大内接球半径)
pro:如题.给定上圆半径r,下圆半径R,高度h.问最大内接球半径. sol:由对称性,我们放到二维来看,即给这么一个梯形,问最大内接圆半径. 证明:如果是一个三角形的内接圆C,他内切于三边. 现在这 ...
- Python全栈之路----函数进阶----列表生成式
列表生成式 现在有个需求,看列表[0,1,2,3,4,5,6,7,8,9],要求你把列表里每个值都加1,你怎么实现?你可能会想到两种方法. 二逼青年版 >>> a = [0,1,2, ...
- mlsql 基本操作
数据库的操作: 1.创建 create databases python_test_01(库名,自定义)chaeset = utf8; 2.删除 drop database python_test_0 ...
- ViewpagerHandler
import android.os.AsyncTask; import android.os.Handler; import android.os.Message; import android.su ...