大家好,今天咱们来聊聊 Python 里的 “数据容器”—— 列表(list)。它就像个万能收纳盒,能把各种数据一股脑装进去,还能对这些数据进行五花八门的操作,特别实用。

什么是列表?

列表是 Python 里一种能容纳多个数据的数据类型,里面的每一份数据都叫 “元素”。元素的类型很灵活,字符串、数字、布尔值都行,甚至还能嵌套其他列表。
比如这样定义一个列表:

name_list = ['itheima', 'itcast', 'python']

用 print(type(name_list)) 看看,就知道它是列表类型啦。再比如:

my_list = ['itheima', 666, True]

这说明列表里的元素可以是不同类型的。要是想搞个嵌套列表,也很简单:

my_list = [[1, 2, 3], [4, 5, 6]]

列表的下标索引

要从列表里取数据,得靠 “下标索引”。列表的下标从 0 开始,往前数每次加 1;从后往前数就从 -1 开始,每次减 1。
比如有个列表 my_list = [‘饭饭’, ‘阿伟’, ‘凯凯’],要取第一个元素就用 my_list[0],取最后一个元素就用 my_list[-1]。要是碰到嵌套列表,像 my_list = [[1, 2, 3], [4, 5, 6]],取里面的 5 就用 my_list[1][1]。

列表的常用操作

列表的操作方法特别多,咱们一个一个来唠。

查找元素下标

用 index() 方法可以找元素在列表里的下标。比如:

my_list = ["itcast", "itheima", "python"]
index = my_list.index("python")
print(f"itheima 在列表中的下标索引值是:{index}")

不过得注意,要是元素不存在,程序就会报错。

修改元素

直接通过下标给元素赋值就行。比如:

my_list[0] = "传智教育"
print(f"列表被修改元素值后,结果是:{my_list}")

插入元素

用 insert(下标, 元素) 能在指定位置插入元素。比如:

my_list.insert(1, "饭饭")
print(f"列表插入元素后,结果是{my_list}")

追加元素

追加元素有两种方法。一种是 append(元素),把元素加到列表尾部:

my_list.append("阿伟")
print(f"列表在追加了元素后,结果是{my_list}")

另一种是 extend(其他数据容器),把另一个列表的元素批量加进来:

my_list2 = [1, 2, 3]
my_list.extend(my_list2)
print(f"列表在追加了一个新的列表后,结果是{my_list}")

删除元素

my_list = ["itcast", "itheima", "python"]
del my_list[2]
print(f"列表删除元素后,结果是{my_list}")

element = my_list.pop(2)
print(f"列表删除元素后,结果是{my_list},取出的元素是{element}")

用 remove(元素) 可以删除第一个匹配的元素:

my_list = ["itcast", "饭饭", "阿伟", "itheima", "python"]
my_list.remove("itheima")
print(f"通过remove方法移除元素后,列表的结果是:{my_list}")

要是想清空列表,就用 clear():

my_list.clear()
print(f"列表被清空了,结果是{my_list}")

统计元素

统计元素出现的次数用 count(元素),统计列表元素总数用 len(列表)。比如:

my_list3 = [1, 1, 1, 2, 3, 4]
count = my_list3.count(1)
print(f"列表中1的数量是{count}")

count = len(my_list3)
print(f"列表的元素数量总共有:{count}个")

实战练习

咱们来做个练习,巩固一下学到的知识。比如有个年龄列表 age_list = [21, 25, 21, 23, 22, 20],先追加个 31,再追加个列表 [29, 33, 30],然后取出第一个和最后一个元素,再找 31 的下标。代码如下:

age_list = [21, 25, 21, 23, 22, 20]
age_list.append(31)
print(f"追加元素31后的结果是:{age_list}")

age_list2 = [29, 33, 30]
age_list.extend(age_list2)
print(f"追加列表后的结果是{age_list}")

print(age_list[0])
print(age_list[-1])

index = age_list.index(31)
print(f"元素31在列表中的位置是{index}")

列表的循环遍历

要批量处理列表元素,循环遍历是个好办法。有 while 循环和 for 循环两种方式。

while 循环遍历

通过下标索引来控制循环:

my_list = ["饭饭", "阿伟", "凯凯"]
index = 0
while index < len(my_list):
    element = my_list[index]
    print(f"列表的元素:{element}")
    index += 1

for 循环遍历

直接遍历元素本身,更简洁:

my_list = [1, 2, 3, 4, 5]
for element in my_list:
    print(f"列表的的元素有{element}")

提取偶数案例

最后再看个案例,从数字列表里提取所有偶数,组成新列表。用 while 循环的话:

num_list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
index = 0
even_list = []
while index < len(num_list):
    element = num_list[index]
    if element % 2 == 0:
        even_list.append(element)
        print(f"取出的偶数组成的列表是:{even_list}")
    index += 1

用 for 循环的话:

even_list = []
num_list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
for element in num_list:
    if element % 2 == 0:
        even_list.append(element)
        print(f"取出的偶数组成的列表为:{even_list}")

以上就是 Python 列表的主要内容啦。列表在 Python 编程里用得特别多,掌握了它,处理数据就方便多了。大家可以多动手试试,把这些操作练熟练。

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐