列表[]
a=['张帅','李四','王五','陈六','黄旗']
print(a[2])    王五
print(a[1:3])   ['李四','王五']  左包含,右不包含
print(a[1:])                           默认输出到最后
print(a[1:-1])                        取到最后一个元素的前一个元素
print(a[1::2])                         从左至右,跳一位取值(间隔取值)
print(a[4::-2])                      从右至左,隔一位取值,-表示游标的方向
print(a[-2::-1])                     从右至左,倒数第二位开始取值
 
#增删改查
#增   切片
append  将值放在最后一位
insert     插入,可插入任何位置
 
a.append('吴八')    默认插入到最后一位
a.insert(1,'吴八')     插入坐标为1的位置
 
#修改
a[1]='修改'
a[1:3]=['修改1','修改2']
 
#删除    3种方式    remove、pop、del
a.remove('a')    内置方法,不可直接删除下标,只能删除内容(以内容的角度进行删除)
a.pop(1)            以下标的角度进行删除,删除后会返回删除的是哪个值
a.clear()            清空整个列表
 
del a[0]    非列表单独有    按下表删除
del a         删除整个列表
 
#extend

a=[1,2,3]
b=[4,5,6]
a.extend(b) # b加入到a列表中
print(a,b)
 
结果:
[1, 2, 3, 4, 5, 6]
[4, 5, 6]
 
#reverse     排序方法,将列表翻转
a.reverse()
print(a) --------> [3, 2, 1]
#sort   排序,从小到大进行排序
b=[9,0,2,7,1,6,3]
b.sort()
print(b) --------->[0, 1, 2, 3, 6, 7, 9] c=['b','p','a','c']
c.sort()
print(c) ---------->['a', 'b', 'c', 'p']
#查
 .count    查元素出现的次数
a=[1,4,3,2,1,3,4,5,6,3,2,1]
b=a.count(1)
print(b) -------------->3
.index    依据元素获取下标
a=[1,2,3]
print(a.index(1)) ------> 0
#判断是否是列表
a[1,2,3,4]
b=type(a) is list
print(b) --------->True

题目:

购物车程序:salary = 5000 1. iphone6s 5800 2. mac book 9000 3. coffee 32 4. python book 80 5. bicyle 1500
>>>:1
余额不足,-3000
>>>:5
已加入bicyle 到你的购物车, 当前余额:3500
>>>:quit
您已购买一下商品
bicyle 1500
coffee 30
您的余额为:2970
欢迎下次光临

 答案:

product_list=[
('Mac',9000),
('kindle',800),
('tesla',900000),
('python book',105),
('bike',2000), ]
saving=input('please input your money:')
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):
#将用户选择商品通过choice取出来
p_item=product_list[choice-1] #如果钱够,用本金saving减去该商品价格,并将该商品加入购物车
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')
 
 
 

Python学习(003)-列表[]的更多相关文章

  1. Python学习02 列表 List

    Python学习02 列表 List Python列表 List Python中的列表(List)用逗号分隔,方括号包围(comma-separated values (items) between ...

  2. python学习笔记——列表生成式与生成器

    1.列表生成式(List Comprehensions) python中,列表生成式是用来创建列表的,相较于用循环实现更为简洁.举个例子,生成[1*1, 2*2, ... , 10*10],循环用三行 ...

  3. Python学习3——列表和元组

    一.通用序列操作——索引.切片.相加.相乘.成员资格检查 1.索引,正序从0开始为第一个元素,逆序从-1开始,-1为最后一个元素 >>> greeting[0] 'h' >&g ...

  4. python学习之列表的定义以及增删改查

    列表定义: >>> name['lily','lucy','tom'] >>> nums = [11,22,33,'100','lily'] #python中的列表 ...

  5. Python学习06——列表的操作(2)

    笨办法学Python第39节 之前用的第三版的书,昨天发现内容不对,八块腹肌又给我下了第四版,这次的内容才对上.本节的代码如下: ten_things = "Apples Oranges C ...

  6. python学习04——列表的操作

    笨办法学python第38节 如何创建列表在第32节,形式如下: 本节主要是讲对列表的操作,首先讲了 mystuff.append('hello') 的工作原理,我的理解是,首先Python找到mys ...

  7. python学习之列表语法

    1.列表 1 list.append(obj)在列表末尾添加新的对象2 list.count(obj)统计某个元素在列表中出现的次数3 list.extend(seq)在列表末尾一次性追加另一个序列中 ...

  8. python学习笔记——列表操作

    python列表操作——增 append:追加一条数据到列表的最后 name = ["Zhangsan","XiongDa","Lisi"] ...

  9. python学习之列表和字典

    列表 基本操作>>>len([1,3,4])3 >>>[1,2,3]+[4,5,6]    +号两边必须是相同类型[1,2,3,4,5,6] >>> ...

随机推荐

  1. HDU 6128 Inverse of sum(同余)

    http://acm.hdu.edu.cn/showproblem.php?pid=6128 题意:有一个a数列,并且每个数都小于p,现在要求有多少对$(i,j)$满足$\frac{1}{a_i+a_ ...

  2. python 命令行升级pip

    import os import sys path = '"'+os.path.dirname(sys.executable)+'\\scripts\\pip" install - ...

  3. Selenium UI自动化测试 Selenium Automatic Testing

    https://www.cnblogs.com/sunada2005/archive/2013/12/22/3486314.html UI Automatic Testing 1. 什么样的项目适合自 ...

  4. Admin管理后台

    Django奉行Python的内置电池哲学.它自带了一系列在Web开发中用于解决常见问题或需求的额外的.可选工具.这些工具和插件,例如django.contrib.redirects都必须在setti ...

  5. 【Golang】格式化JSON字符串,方便查看

    分别介绍golang及Python格式化接口返回JSON数据的方法,及Python json.dumps方法出现NameError: name 'true' is not defined原因解析及解决 ...

  6. UVA - 11853 Paintball(dfs)

    UVA - 11853 思路:dfs,从最上面超过上边界的圆开始搜索,看能不能搜到最下面超过下边界的圆. 代码: #include<bits/stdc++.h> using namespa ...

  7. jsp/servlet区别

    简介: JSP全名为Java Server Pages,中文名叫java服务器页面,其根本是一个简化的Servlet设计,它是由Sun Microsystems公司倡导.许多公司参与一起建立的一种动态 ...

  8. [.NET开发] C# 如何创建Excel多级分组

    要设置显示或者隐藏分类数据下的详细信息,在便于数据查看.管理的同时也使文档更具美观性.那么,在C#中如何来创建Excel数据的多级分组显示呢?下面将进行详细阐述.方法中使用了免费版组件Free Spi ...

  9. codeforces 578b//"Or" Game// Codeforces Round #320 (Div. 1)

    题意:n个数字,最多操作k次,每次乘x,要使结果数组的与值最大. 能推断出结果是对一个元素操作k次,并且这个元素的二进制最高位比较大.并不一定是取最大的,比如1100和1010,乘以一次2,两种选法分 ...

  10. 想3分钟搭建图像识别系统?这里有一份TensorFlow速成教程(转)

    http://www.voidcn.com/article/p-wyaahqji-dr.html 从我们见到的各种图像识别软件来看,机器似乎能认出人脸.猫.狗.花草.各种汽车等等日常生活中出现的物体, ...