列表的所有操作
列表的创建
方法一
list = [1,2,3]
方法二
使用list()函数
list = list()
range()函数的用法
range(start,end,step)
start :起始的值
end:到end -1 结束
step:相邻两个数之间相差step个
列表的索引和切片
索引
索引分为正向索引和反向索引。
正向索引:从左往右。
反向索引:从右往左。
索引的起始值是0。
切片
列表的切片可以从列表中取得多个元素并组成一个新的列表。
list = [1,2,3,4,5,6,7,8,9]
print(list[:4}) #[1,2,3] 没有start就默认从0开始。
print(list[4:] #[5,6,7,8,9] 没有end,就从start后全部取出
列表的遍历
while 语句遍历
list1 = [1,2,3,4,5,6]
lenght = len(list1)
i = 0
while i < lenght:
print(list1[i])
i += 1
for语句遍历
list1 = [1,2,3,4,5,6]
for i in list1:
print(i)
列表的运算
运算符 说明
+ 列表连接,合并两个列表
* 复制列表元素
[] 索引列表中的元素
[ : ] 对列表进行切片
in 如果列表中包含给定元素,返回True
not in 如果列表中包含给定元素,返回False
列表中元素修改
直接使用下标对列表中的元素进行修改
list[0] = 5
列表中元素增加
函数 说明
append(obj) 在列表末尾添加元素obj
extend(seq) 在列表末尾添加多个值,使用extend()函数,seq是一个可迭代对象,否则报错。
insert(index,obj) 将元素obj添加到列表的index位置处。
append()函数,添加到列表的最后。
list = [1,2,3,4,5]
list.append(6)
print(list) # [1,2,3,4,5,6]
extend()函数
list1,list2 = [1,2,3],[4,5,6]
list1.extend(list2)
print(list1) #[1, 2, 3, 4, 5, 6]
insert()函数
list1 = [1,2,3,4]
list1.insert(1,6)
print(list1) #[1, 6, 2, 3, 4]
列表中元素删除
函数 说明
pop(index = -1) 删除列表中index处的元素(默认index = -1),并且返回该元素的值。
remove(obj) 删除列表中第一次出现的obj元素
clear() 删除列表中所有元素
pop(index = -1)函数
list1 = ['a',1,2,3]
x = list1.pop()
print(list1) #['a', 1, 2]
print(x) #3
remove()函数
list1 = ['a',1,2,3,1]
list1.remove(1)
print(list1) #['a', 2, 3, 1]
clear()函数
list1 = [1,2,3,4,5]
list1.clear()
print(list1) #[]
查找元素位置
index()函数
index()函数从列表中查找莫格元素第一次出现的位置。
index(obj,start = 0 , end = -1)
obj:要查找的元素
start:表示查找的起始位置。
end:表示查找的范围的结束处(不包含此位置)。
list1 = [1,2,3,4,5]
print(list1.index(3)) # 2
元素排序
sort()函数
sort():默认对列表中的元素从小到大排序。
sort(reverse = True) :列表中的元素按从大到小进行排序。
list1 = [3,5,6,1,2,9]
list1.sort()
print(list1) #[1, 2, 3, 5, 6, 9]
list1.sort(reverse = True)
print(list1) #[9, 6, 5, 3, 2, 1]
使列表中的元素反转
reverse()函数
list1 = [4,3,1,6,7]
list1.reverse()
print(list1) # [7, 6, 1, 3, 4]
统计元素个数
count()函数可以统计元素出现的个数。
list1 = [1,2,3,4,1,2,1,2,1]
x = list1.count(1)
print(x) #4
列表推导式
for
list1 = [1,2,3,4]
list2 = [nums ** 2 for nums in list1]
print(list2) #[1, 4, 9, 16]
for … if
list1 = [1,2,3,4,5]
list2 = [nums ** 2 for nums in list1 if nums > 2]
print(list2) #[9, 16, 25]