第二章Python的List和Tuples
来源:互联网 发布:淘宝拖把旋转桶 编辑:程序博客网 时间:2024/05/17 07:56
List
一、创建一个List
a_list=['a','b','mp3','z','example']a_list[0]aa_list[-1]example
1、List是个顺序排列的集合
2、List是个从0开始计数的数组,第一个元素肯定是a_list[0]
所以最后一个元素是 List长度-1
3、使用负数倒序访问List元素,List的最后一个元素必定是a_list[-1]
负数索引值的计算公式
a_list[-n] == a_list[len(a_list) - n]
二、截断一个List
可以从一个已经定义好的List中获取特定位置的几个元素
在list下标中指定两个索引值,这样list的返回值就是包含特定元素的新list
>>> a_list['a', 'b', 'mpilgrim', 'z', 'example']>>> a_list[1:3] 1['b', 'mpilgrim']>>> a_list[1:-1] 2['b', 'mpilgrim', 'z']>>> a_list[0:3] 3['a', 'b', 'mpilgrim']>>> a_list[:3] 4['a', 'b', 'mpilgrim']>>> a_list[3:] 5['z', 'example']>>> a_list[:] 6['a', 'b', 'mpilgrim', 'z', 'example']1、从1开始但不包含3的List
2、从list的第二个元素到list最后一个元素之间的,但不包括最后一个
3、按下标从0到3的,但不包括3的
效果同上,0可以省略
4、从下标n到数组最后一个,包括最后一个
5、list的全部元素
三、向List添加元素
>>> a_list = ['a']>>> a_list = a_list + [2.0, 3] 1>>> a_list 2['a', 2.0, 3]>>> a_list.append(True) 3>>> a_list['a', 2.0, 3, True]>>> a_list.extend(['four', 'Ω']) 4>>> a_list['a', 2.0, 3, True, 'four', 'Ω']>>> a_list.insert(0, 'Ω') 5>>> a_list['Ω', 'a', 2.0, 3, True, 'four', 'Ω']1、使用+号操作符连接list创建新的list,list没有数量限制,但这种操作实际是创建了2个list对内存消耗比较大
2、list可以装载任意数据类型的元素,不必是同一类型
3、append()方法可以将一个元素(任意数据类型)添加到list末尾
4、List实际是个类,创建一个List实际上是实例化一个类,extend()方法接收一个list作为参数并把新list的每个元素添加到原有的list中
5、insert()方法添加一个元素到list中,第一个参数是添加到list的位置的索引值
list的元素可以重复
四、在List中查找值
>>> a_list = ['a', 'b', 'new', 'mpilgrim', 'new']>>> a_list.count('new') ①2>>> 'new' in a_list ②True>>> 'c' in a_listFalse>>> a_list.index('mpilgrim') ③3>>> a_list.index('new') ④2>>> a_list.index('c') ⑤Traceback (innermost last):File "<interactive input>", line 1, in ?ValueError: list.index(x): x not in list1、count()方法返回查找值在list中的数量
2、如果只想知道是否包含查找的值可以使用in,返回True 或 False,这种方法要比count()方法速度快
3、使用index()方法返回值所在的索引值,也可以添加第二个参数作为查找开始位置,第三个参数作为查找结束为止
4、index()方法只返回第一次查找到的位置
5、因为-1在Python中是有意义的索引值,所以index()方法没有找到对应的位置会抛异常
五、从List中移除元素
使用del删除
>>> a_list = ['a', 'b', 'new', 'mpilgrim', 'new']>>> a_list[1]'b'>>> del a_list[1] 1>>> a_list['a', 'new', 'mpilgrim', 'new']>>> a_list[1] 2'new'1、使用del命令删除特定位置
2、删除后,后面的元素会自动填补被删除的下标,下标之间不会有空隙
使用remove方法删除
>>> a_list.remove('new') 1>>> a_list['a', 'mpilgrim', 'new']>>> a_list.remove('new') 2>>> a_list['a', 'mpilgrim']>>> a_list.remove('new')Traceback (most recent call last):File "<stdin>", line 1, in <module>ValueError: list.remove(x): x not in list1、使用remove()方法,remove方法接受一个值,并将第一个遇到的删除,同样下标无间隙
2、使用remove方法未能移除一个值时会抛异常
使用pop方法移
>>> a_list = ['a', 'b', 'new', 'mpilgrim']>>> a_list.pop() 1'mpilgrim'>>> a_list['a', 'b', 'new']>>> a_list.pop(1) 2'b'>>> a_list['a', 'new']>>> a_list.pop()'new'>>> a_list.pop()'a'>>> a_list.pop() 3Traceback (most recent call last):File "<stdin>", line 1, in <module>IndexError: pop from empty list1、调用pop()方法不给参数,将默认删除list的最后一个元素
2、调用pop()方法并传一个索引值,将会删除特定位置的值
3、在空的list调用pop()方法会抛异常
七、使用boolean等式判断list是否为空
>>> def is_it_true(anything):... if anything:... print("yes, it's true")... else:... print("no, it's false")...>>> is_it_true([]) 1no, it's false>>> is_it_true(['a']) 2yes, it's true>>> is_it_true([False]) 3yes, it's true1、在boolean等式中,空的list返回false
2、只要有一个元素,list返回true
3、是要有一个元素就是真,和元素的数据类型无关
Turples
tuple是个不可变list
>>> a_tuple = ("a", "b", "mpilgrim", "z", "example") 1>>> a_tuple('a', 'b', 'mpilgrim', 'z', 'example')>>> a_tuple[0] 2'a'>>> a_tuple[-1] 3'example'>>> a_tuple[1:3] 4('b', 'mpilgrim')1、tuple与list定义的方式相同,只是全部元素被()包裹而不是[]
2、tuple的元素顺序是既定的,索引值从0开始
3、tuple也可以使用负数索引
4、tuple也可以截断,截断后返回一个新的tuple
5、tuple没有append,extend,insert,remove,pop方法
6、tuple可以查找变量
7、tuple判断空的方式与list相同
8、创建一个元素的tuple,必须在第一个元素后加逗号,不加的话python会认为多了对括号
a_tuple = ('a',)9、使用tuple一次对多个变量赋值
>>> v = ('a', 2, True)>>> (x, y, z) = v 1>>> x'a'>>> y2>>> zTruev是个tuple变量,同时为xyz三个变量赋不同的3个值
- 第二章Python的List和Tuples
- Python 的Lists、Tuples、Dictionaries和Sets
- Python tuples list
- python学习第二章----列表list和元组tuple
- [python笔记][第二章Python序列-list]
- 3.12 - Tuples in Python
- python中的tuples
- Difference Between List and Tuples
- Python[六]:Tuples and Sequences
- Think Python: Chapter 12 Tuples
- tuples
- python的list和tuple
- python的list 和 tuple
- python的list和tuple
- Pyhton——List,Sorting,Tuples类型
- zip: 2 sequence => list of tuples
- python之list.append()和list.extend(list)的区别
- python之list.append()和list.extend(list)的区别
- 用phpmailer发送HTML邮件
- [KB]取消移动硬盘活动分区
- asm冲突问题
- hibernate集合映射inverse和cascade详解
- Hibernate数据查询
- 第二章Python的List和Tuples
- Linux下jdk与tomecat的部署
- java.sql.date 与 java.util.date的转换
- Ajax中文处理乱码
- Struts+AJAX级联下拉菜单
- WOW API
- HOME用net localgroup命令和net user命令
- 3种工厂新的比较
- ply文件加载