目录
1.定义
列表是指将一系列元素放在一起使用[]包含,列表内的元素类型可以不一样,列表是可变类型,对内部元素修改不会导致新列表产生。列表是可迭代数据类型,可以使用循环迭代其内容。列表内的元素是有序的,每一个元素都有其对应的索引,索引从0开始,列表内每一个元素之间用逗号隔开
l1 = [1, 2, 3, 4, 5]
# 直接循环遍历l1里的元素,简单但不能获取索引
for e in l1:
print(e, end=" ")
print()
# 通过列表的索引遍历l1的元素
# l1[i]就代表l1内索引为i的元素
for i in range(len(l1)):
print(l1[i], end=" ")
2.常用操作
1.列表元素的添加
append():在列表末尾添加元素
insert(): 在指定位置插入元素,例如Insert(5, "abc")指在索引为5的位置插入元素"abc"
extend():插入列表,将括号内列表的元素全部添加到调用此方法的列表内。
# 列表的添加
# 定义一个空列表
l1 = []
# 使用append()方法为l1添加元素
l1.append(1)
print(l1)
# 使用insert在l1指定位置插入元素
l1.insert(0, "插入到索引为0的位置")
print(l1)
# 定义另一个列表
l2 = ["a", "b", "c", 2, 3, 4]
# 使用extend将l2中所有的元素都添加到l1中
l1.extend(l2)
print(l1)
2.列表的删除
remove():删除括号内的元素,如果列表内有多个该元素时只删除第一个,如果没有括号内的元素会报错。
pop():删除列表中指定位置的元素,括号内为空时删除最后一个,返回值为被删除的元素,意为按索引删除。
clear(): 清空列表,顾名思义,指删除指定列表内所有的元素
# 列表的删除
# 定义一个列表l1
l1 = [1, 2, 3, 3, 3, 3, 3, 4, 5, 6]
# 使用remove方法删除l1里面的3,只能删除第一个
l1.remove(3)
print(l1)
# 如果想要删除所有的3可以使用循环
while True:
# 表示如果l1内有元素3则执行删除操作
if 3 in l1:
l1.remove(3)
else:
break
# 打印l1的值可以看到所有的3都已经被删除
print(l1)
# 使用pop方法删除列表内指定位置的元素,比如我想删除第一个元素
l1.pop(0)
print(l1)
# pop方法不加参数则默认删除列表最后一个元素
l1.pop()
print(l1)
# 使用clear方法清空列表
l1.clear()
# 此时列表已经为空
print(l1)
执行结果如下
3.计数
count:返回列表内某元素的个数
例如定义一个列表 l1 = [1, 2, 3, 4, 4],那么l1.count(4)的值就是2,代表列表l1里有两个4
4. 排序
reverse:倒序,就是将列表内的元素的顺序反过来
sort():排序,默认为升序排序,如果将默认参数reverse的值设为Ture则是降序排序
# 列表的排序
# 定义一个列表
l1 = [1, 5, 6, 3, 9, 2, 4]
# 使用reverse方法使列表顺序倒过来
l1.reverse()
print(l1)
# 使用sort方法对l1进行排序
# 默认为升序排序
l1.sort()
print(l1)
# 设置默认参数的值实现降序排序
l1.sort(reverse=True)
print(l1)
3.多维列表
多维列表指列表的嵌套,就是列表里面存列表,例如 list1 = [[1, 2], [2, 3], [3, 4]]这就是一个二维列表,二维列表的元素也是可以通过索引访问,例如list1[0][0]就是指列表list1中第0个列表的第0个元素,也就是1.可以使用列表生成式快速生成一个多维列表。
# 使用列表生成式生成一个二维列表
l1 = [[j for j in range(8)] for i in range(8)]
# 使用for循环遍历发现得到了一个十行十列的二维列表
for e in l1:
print(e)