1.列表的创建
变量只能存储一个元素,列表可以存储n个元素
#创建列表的第一种方式用[]
lis=[10,34,'nihao']
#创建列表的第二种方式,list()内置函数
list1=list(['hello',90,'lkj'])
2.列表的特点
按顺序有序排列;索引映射唯一;数据类型混存;动态回收分配内存;可存储重复数据;
正索引号 |
1 |
2 |
3 |
|
[ |
'hello' |
'world' |
90 |
] |
逆索引号 |
-3 |
-2 |
-1 |
3.列表查询操作
Index(元素,start,stop)函数:
只返回相同元素的第一个元素的索引,也可以在指定范围内进行查找
list2=[1,1,4,5,1]
print(list2.index(1,2,5))
在索引为2到4中查找为元素1的索引
获取列表中的多个元素,切片:
list3=[1,1,4,5,1,'ji','lp']
print(list3[1:6:2])#进行切片操作,从索引1开始到5结束,步长为2
List[start:stop:步长],省略参数则采用默认
步长为负数逆序,第一个元素为原列表的最后一个元素
判断指定元素在列表中是否存在:
in 或者not in
列表遍历
采用for循环
4.列表的元素增加
append()函数:
向列表末尾增加元素,list.append(元素)
extend()函数:
向列表末尾添加至少一个元素
list3=[1,1,4,5,1,'ji','lp']
list5=[8,'jio']
list3.extend(list5)
insert()函数:
在列表任意指定位置添加一个元素
list3.insert(4,'uiop')#在索引为4的位置上添加uiop,不是覆盖
切片:
list3=[1,1,4,5,1,'ji','lp']
list5=[8,'jio']
list3[2:]=list5
print(list3)
相当于把切掉的部分用新的替代
5.列表的删除操作
remove()函数:
从列表中移除一个元素,重复元素只删除一个,元素不存在输出ValueError
list.remove(数),这的数指的是元素
pop()函数:
根据索引移除元素,list.pop(数),这的数指的是索引
如果指定索引不存在将超出异常,如果不指定参数将删除列表的最后一个元素
切片:
删除至少一个元素,将产生一个新的列表对象:
list3=[1,1,4,5,1,'ji','lp']
new_list=list3[1:4]
不产生新对象:
list3=[1,1,4,5,1,'ji','lp']
list3[1:4]=[]
clear()函数:
清除列表中的所有元素
del()函数:
将列表对象删除,意思就是不存在这个列表了,再使用就无定义了
del list3
6.列表元素的修改
指定索引赋予新值
为指定的切片指定新的值:
list3=[1,1,4,5,1,'ji','lp']
list3[1:3]=['ni',90,'ko',78]
print(list3)
7.列表的排序
sort()函数:
list.sort(reverse=True),reverse=True代表降序,reverse=False代表升序
默认升序,排序后没有产生新的对象
list4=[20,33,12,56,34]
print(list4,id(list4))
list4.sort()
print(list4,id(list4))
sorted()函数:
产生一个新的列表对象,原列表不发生改变
list4=[20,33,12,56,34]
print(list4,id(list4))
new_list=sorted(list4)
print(new_list,id(new_list))
8.列表生成式(生成列表的公式)
list6=[i for i in range(1,10)]
print(list6)