创建list对象
创建一个简单的列表可以采用中括号将列表括起来,逗号分隔
a=[1,2,3]
下面有两种方法创建一个空列表
a=[]
a=list()
同时可以用list()将迭代类型的对象转化为list
a=list(obj)
a=list(range(10))
将tuple转化为list
b=1,2,3
a=list(b)
将一个字典类型的索引或值转换为list
b={'a':1,'b':2,'c':3}
a=list(b.values())
c=list(b.keys())
添加对象到列表中
插入一个对象到列表中有如下两种直接方式
1.将一个对象插入到列表尾端
a.append(item)
item=1
a=list()
a.append(item)
2.将对象item 插入列表的location 位置
a.insert(location,item)
obj=1
a=[1,2,3]
a.insert(1,100) #插入100到第二个位置
将两个列表合并为一个列表
list对象的加号功能是将两个列表连接起来
x=[1,2,3]
y=[4,5]
c=x+y #合并x与y赋给c
用extend函数将会直接向列表添加队列,并且不返回值
x=[1,2,3]
y=[4,5]
x.extend(y)
//x中将会加入序列y
用__add__()函数将序列加入已有列表
b=a.__ add __(sequence)
l=[1,2] #或l=tuple(1,2)等
a=[]
a.__add__(l)
删除列表中的对象
pop函数,参数index代表删除的对象的索引
index默认为-1(代表最后一个元素)
list.pop(index=-1)
x=[1,2,3]
x.pop() #移除最后一个值
x.pop(0) # 移除第一个值
remove函数将会移除掉list里的第一个匹配的对象
list.remove(item)
x=[1,2,3,1]
x.remove(1) #移除列表中的第一个1,x变为[2,3,1]
其它的list对象方法
list.count(obj) 输出列表中含有的obj个数
list.reverse() 翻转列表的顺序,不返回值
list.sort(func=None,key=None,reverse=False)
list.index(obj)返回对象在列表的第一个索引
>>> l=[1,2,1,3]
>>> x.index(1)
1
列表解析
可以在创建列表的时候加入for循环使得代码更加简洁
>>> x=[y**2 for y in range(10)]
>>> x
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
列表重复操作
将列表进行copies_int次重复
x=list([1,2,3])*copies_int
x=[1,2]
copies_int=2
c=x*copies_int #获得两次重复x,并赋值给c,[1,2,1,2]
判断成员是否存在in,not in
>>> x=[1]
>>> y=[2]
>>> 2 in x
False
>>> 2 in y
True
切片操作
sequence[1:] # 从第二个开始输出
sequence[::-1] # 倒序输出
sequence[::2] # 间隔一个输出
>>> x=[y**2 for y in range(10)]
>>> x
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
>>> x[::2]
[0, 4, 16, 36, 64]
>>> x[1:]
[1, 4, 9, 16, 25, 36, 49, 64, 81]
>>> x[::-1]
[81, 64, 49, 36, 25, 16, 9, 4, 1, 0]
>>> x[1:3]
[1, 4]