Python 列表 (List) 详解
Python 中的列表 (List) 是一种内置的数据结构,用于存储一个有序的元素集合,列表是最灵活的容器之一,因为它支持可变性 (Mutable),这意味着你可以在创建后修改其内容。
列表的基本特性
- 有序性:元素在列表中的顺序是固定的,可以通过索引访问。
- 可变性:可以随时添加、删除或修改元素。
- 多样性:一个列表中可以包含不同类型的元素(如整数、字符串、甚至另一个列表)。
- 允许重复:列表中可以存在多个相同的元素。
创建列表
可以使用方括号 [] 或内置函数 list() 来创建列表。
- 空列表:
my_list = []或my_list = list() - 初始化列表:
fruits = ["apple", "banana", "cherry"] - 混合类型列表:
mixed = [1, "Hello", 3.14, True]
访问与切片
Python 提供了强大的索引和切片机制来获取列表中的元素。
- 正向索引:从
0开始(fruits[0]获取第一个元素)。 - 反向索引:从
-1开始(fruits[-1]获取最后一个元素)。 - 切片 (Slicing):使用
[start:stop:step]语法。fruits[1:3]:获取索引 1 到 2 的元素。fruits[:2]:获取前两个元素。fruits[::2]:每隔一个元素取一个。fruits[::-1]:反转列表。
常用操作方法
Python 为列表提供了丰富的内置方法来处理数据:
-
添加元素:
append(x):在列表末尾添加一个元素。extend(iterable):将另一个序列的所有元素追加到末尾。insert(i, x):在指定索引i处插入元素
x。
删除元素:
remove(x):删除列表中第一个值为x的元素。pop(i):删除并返回索引i处的元素(默认删除最后一个)。clear():清空列表所有元素。del list[i]:使用del关键字删除指定索引的元素。
-
排序与搜索:
sort():对原列表进行原地排序(升序)。reverse():反转原列表的顺序。index(x):返回元素x第一次出现的索引。count(x):统计元素x在列表中出现的次数。
列表推导式 (List Comprehensions)
列表推导式是一种简洁地创建列表的方法,通常用于对现有序列进行过滤或转换。
语法:[expression for item in iterable if condition]
- 示例 1(生成平方数):
squares = [x2 for x in range(10)] - 示例 2(过滤偶数):
evens = [x for x in range(20) if x % 2 == 0]
常用内置函数
除了列表自身的方法,以下内置函数也经常与列表配合使用:
len(list):返回列表的长度。max(list)/min(list):返回列表中的最大值或最小值。sum(list):计算列表中所有数值的总和。sorted(list):返回一个排序后的新列表,不改变原列表。
复杂度分析 (时间复杂度)
- 索引访问:$O(1)$
- 末尾添加/删除 (append/pop):$O(1)$
- 中间插入/删除 (insert/remove):$O(n)$
- 搜索元素 (in/index):$O(n)$
- 排序 (sort):$O(n log n)$
首发原创文章,作者:世雄 - 原生数据库架构专家,如若转载,请注明出处:https://idctop.com/article/487758.html



