列表[]
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. c++ 查找容器中符合条件的元素,并返回iterator(find_if)

    #include <iostream> // std::cout #include <algorithm> // std::find_if #include <vecto ...

  2. Qt5.3.2openglVS2010_QSqlField_字段类型

    1.本来想通过 QSqlField::typeID() 来找字段类型,但是没找到... 然而看到了 SQL_INTEGER.SQL_SMALLINT等的使用(在“static QVariant::Ty ...

  3. Java读写记事本文件

    Java中我们也会考虑读写记事本,文件读取如下: public static void main(String[] args) { try { String path="d:\\abc.tx ...

  4. J2EE 与 Java EE

    J2EE(Java 2 Enterprise Edition)和Java EE是一样的,由于J2EE的名称容易引起误解,Sun将J2EE更名为Java EE. 2005年6月,JavaOne大会召开, ...

  5. 雷林鹏分享:C# 索引器(Indexer)

    C# 索引器(Indexer) 索引器(Indexer) 允许一个对象可以像数组一样被索引.当您为类定义一个索引器时,该类的行为就会像一个 虚拟数组(virtual array) 一样.您可以使用数组 ...

  6. rabbitmq 消息的状态转换

    tutorial:http://www.rabbitmq.com/tutorials/tutorial-two-java.html 这里解释接收消息端关于 acknowledge和prefetch的设 ...

  7. 3.3 x86指令简介

    计算机组成 3 指令系统体系结构 3.3 x86指令简介 x86指令种类繁多,数量庞大.在这一节我们将会学习x86指令的分类,并分析其中最为基础的一部分指令. 通常一个指令系统主要包括这几类指令.运算 ...

  8. JDK并发工具之同步控制

    一.synchronized的功能扩展:重入锁(java.util.concurrent.locks.ReentrantLock) 重入锁可以完全替代synchronized关键字.在JDK 5.0的 ...

  9. Mycat配置入门

    配置: --bin 启动目录 --conf 配置文件存放配置文件: --server.xml:是Mycat服务器参数调整和用户授权的配置文件. --schema.xml:是逻辑库定义和表以及分片定义的 ...

  10. 大年三十。让字母在屏幕上奔跑:(sleep , system"clear")

    system "clear",ruby清屏(osk系统上,window上用system "cls"). https://stackoverflow.com/qu ...